原文件内容:
a.c:
section = .text   //新文件内容取.text
src_addr = 0x0   //新文件不要此行
length = 0x453(1107)//新文件内容取0x453
dest_addr = 0x3F8200//新文件内容取0x3F8200
space = 0//新文件内容取00x28AD,0x8000,0xFF33,0X5468//新文件内容取0x28AD0x80000xFF330X5468
.....                     
checksum=0x14a3           //新文件不要此行
 //以上这些是一段section = .text
src_addr = 0x0
length = 0x453(1107)
dest_addr = 0x3F8200
space = 0........//同上一段,此略
要求将上述文件内容取
.text0x4530x3F820000x28AD0x80000xFF330X5468.....
并将它们保存成2进制文件存到一个新建文件里,
不知怎么做了?

解决方案 »

  1.   

    用CStdioFile类打开原文件,文本方式。逐行读取,每行用等号拆分。获取等号右侧的信息(去除前后空格)。每
    section = .text   //新文件内容取.text
    src_addr = 0x0   //新文件不要此行
    length = 0x453(1107)//新文件内容取0x453
    dest_addr = 0x3F8200//新文件内容取0x3F8200
    space = 0//新文件内容取00x28AD,0x8000,0xFF33,0X5468//新文件内容取0x28AD0x80000xFF330X5468
    这么多行一次循环。当然,这个最后一个就不用等号拆分了。
    然后,将读取的内容存储到字符串。
    新建文件,二进制方式打开,将读取的字符串写入新文件。
      

  2.   

    CStdioFile分析,然后CFile二进制输出
      

  3.   

    用CStdioFile的ReadString逐行读入,然后对CString处理一下就好了
      

  4.   

    直接读到CString里去,用格式化的函数格式成2进制的形式就好了
      

  5.   

    CStdioFile类很好用的
    不过注意,在Unicode下有中文时,用这个类要小心
      

  6.   

    谢谢各位了,现在还有最后有一个问题,就是用CStdioFile类怎么样判断文件结束?
    FILE *fp
    while(!feof(fp))//想要这种形式的
    {
      ....//做我的东西
    }
      

  7.   

    还有个问题:
     jjkka(天涯草) 说的:直接读到CString里去,用格式化的函数格式成2进制的形式就好了
    怎么转啊?CString str;
    str.Format(...)
    好像转不了啊