请教一个关于很长的字符串常量定义的问题(100)

Discussion in '编程心得' started by agaric, Aug 3, 2009.

  1. ag

    agaric Member

    Apr 1, 2015
    在代码编写中我经常有需要定义一个很长的字符串作为常量,比如一个xml字符串。定义的时候需要分行,然后加很多单引号和 + 觉得很烦,而且字符串中如果本身有单引号的话,还需要转换。想找个更简单的办法。要足够方便。ps:1、必须分行,不分行的字符串太长一个不好看,二个好像会出问题。2、不用外部文件,因为不想随exe一起发出去。3、不适用Res,因为若这个常量修改了,需要编译Res,而编译这个的不一定是本人。4、主要是为了偷懒。。。。。。
     
  2. 新世纪

    新世纪 Member

    Apr 1, 2015
    大概明白楼主的问题, 不过2、不用外部文件,因为不想随exe一起发出去。这句有点含义不清: 你的意思是: 这个字符串常量要包含在你的exe文件中, 而不是单独的硬盘文件?如果是这个意思: 那么你必须做一个专门的工具: 更新你的exe文件(不用再编译程序, 而是只更新你的exe文件中的字符串常量);办法很简单的: 提示一下: win32的exe文件末尾是可以随便添加数据而不影响程序执行的;
     
  3. ag

    agaric Member

    Apr 1, 2015
    呃,没那么复杂,我的目标只是想在写代码的时候偷懒而已。exe肯定需要重编译的。因为我通常都是用这种来做一些表格表头的初始化。因为工程里面估计有近20个这样的东西。比如:<GridColHead> <Row> <Col Name="Index" Caption="序号" Index="0" Type=""/> <Col Name="ID" Caption="凭证号" Index="1" Type=""/> <Col Name="" Caption="审核" Index="2" Type=""/> <Col Name="" Caption="凭证来源" Index="3" Type=""/> <Col Name="Date" Caption="日期" Index="4" Type=""/> <Col Name="Creator" Caption="填写人" Index="5" Type=""/> <Col Name="" Caption="审核人" Index="6" Type=""/> </Row></GridColHead>
     
  4. 新世纪

    新世纪 Member

    Apr 1, 2015
    哦, 你既然是程序员, 而且是Delphi程序员, 这个就很简单了:用Delphi写个小程序, 专门将文本(外部的文件或者剪贴内容)变成一段你不愿意一行一行要写',的字符串常量代码就可以了;
    这样的小个程序估计你几分钟就能完成了;
     
  5. ag

    agaric Member

    Apr 1, 2015
    嗯,这个想法不错。看看还有没其他办法?
     
  6. 冰力不足

    冰力不足 Member

    Apr 1, 2015
    这是经常碰到的啦 自写一函数 mod ... 要截取多长你来定
     
  7. ag

    agaric Member

    Apr 1, 2015
    这都是外部解决办法。我是想找有没有delphi自己的解决办法。看来貌似没有。
     
  8. ag

    agaric Member

    Apr 1, 2015
    多人接受答案了。