VC6.0的CFile类的seek的使用,(文件定位操作)!急

用seek确实可以定位到你想要的文件中的位置,但是我在指定的位置添加字符串时,字符串是添加成功了,但是这个字符串却把相应位置的字符给覆盖掉了,这是为什么啊?我想要在指定的... 用seek确实可以定位到你想要的文件中的位置,但是我在指定的位置添加字符串时,字符串是添加成功了,但是这个字符串却把相应位置的字符给覆盖掉了,这是为什么啊?
我想要在指定的位置添加一个字符串,当然,在指定位置后面的内容都得后移.请帮帮我好吗?真的很急!谢谢你们了!
代码如下:
CFile file;
file.Open(SaveXmlPath, CFile::modeReadWrite, NULL);
file.Seek(41,CFile::begin); //从文件头开始往下移动41字节
char pbuf[10] = "1234567890";
file.Write( pbuf, 10 );
file.Close();
请赐教!
展开
 我来答
百度网友5a16a12
2006-10-26 · TA获得超过517个赞
知道小有建树答主
回答量:418
采纳率:0%
帮助的人:471万
展开全部
CFile类本来就是这样直接写硬盘的,当然不会有你想象的“插入”模式和“改写”模式了。
如果要插入,可以把第41个字符后面的所有字符先存起来,然后把要插入的字符追加到文件尾,最后再把刚才存起来的字符加上。
只能这样了。
yanfeiguo
2006-10-26
知道答主
回答量:5
采纳率:0%
帮助的人:0
展开全部
我是提问题的那个人.
但是我后面的字符太大了,有1M多呢,那要都存起来,然后再添加吗?感觉效果应该不是很好.其实我是想往 XML 文件中添加一个字符串.XML文件内容如下:
<?xml version="1.0" encoding="gb2312" ?>
<!DOCTYPE bookInformation [
<!ELEMENT bookInformation (book)* >
<!ELEMENT book ( title, author+,press, price,resume*) >
<!ELEMENT title (#PCDATA) >
<!ELEMENT author (#PCDATA) >
<!ELEMENT press (#PCDATA) >
<!ELEMENT price (#PCDATA) >
<!ELEMENT resume (#PCDATA) >
<!ATTLIST price 货币单位 ( 人民币 | 英镑 | 美元) '人民币'>
] >
<bookInformation>
<book>
<title>电子商务基础</title >
<author>唐春林</author>
<author>唐春</author>
<press>科学出版社</press>
<price 货币单位="人民币">24.80</price>
<resume>本书介绍电子商务的基础知识及涉及的主要技术.</resume>
</book>
... ...
</bookInformation>

我是想添加
<!DOCTYPE bookInformation [
<!ELEMENT bookInformation (book)* >
<!ELEMENT book ( title, author+,press, price,resume*) >
<!ELEMENT title (#PCDATA) >
<!ELEMENT author (#PCDATA) >
<!ELEMENT press (#PCDATA) >
<!ELEMENT price (#PCDATA) >
<!ELEMENT resume (#PCDATA) >
<!ATTLIST price
货币单位 ( 人民币 | 英镑 | 美元) '人民币'>
] >
这一段内容进去.不知道怎么添加(用VC实现).因为有很多的节点,所以你说的那种方法在效率上会有影响.朋友能再帮我想想办法吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式