C++操作文本的txt程序,往文件里面写入一行字,然后插入一行,让后在文件最后写入一行

C++操作文本的txt程序,往文件里面写入一行字,然后插入一行,让后在文件最后写入一行... C++操作文本的txt程序,往文件里面写入一行字,然后插入一行,让后在文件最后写入一行 展开
 我来答
网虫00
2012-08-12 · TA获得超过144个赞
知道小有建树答主
回答量:123
采纳率:0%
帮助的人:100万
展开全部
如果只是追加一行,在写文件的时候,可以设定追加的模式:
类似这样:
FILE *fp = fopen("a.txt", "a+");

ofstream file("a.txt", ofstream::app);
如果需要插入一行
把文件内容全部读出来,读到一个字符buffer中,像操作字符串那样判断回车符的位置,直接操作这个字符buffer,操作完成后再写回文件将原文件覆盖。
C++操作文件可以用文件流,也可以使用传统C语言的文件操作。
提大刀砍鬼子
2012-08-11 · TA获得超过106个赞
知道小有建树答主
回答量:124
采纳率:0%
帮助的人:76.2万
展开全部
文件的读出和写入都是利用了系统自带的文件指针进行实现,简单输入输出时用户只能把指针移动到最前操作或者移动到文件最后操作,要在中间插入的话就要对所写入内容进行分析然后移动指针来实现,这样比较容易出错。要是一定要在文件中插入的话,可以考虑将文件读出再插入再写入,或者将内容写入不同的文件,在进行追加
追问
插入最前面会把之前的一句给覆盖,怎么办
gets(str1);
fputs(str1,fp);
fseek(fp,0,0);
gets(str2);
fputs(str2,fp);
fputs(str1,fp);
fseek(fp,0,2);
gets(str3);
fputs(str3,fp);
fclose(fp);
return 0;
除了我这个利用复制的以外,能不能直接插入
追答
可以直接追加在文件后面嘛
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
slionls
2012-08-12 · TA获得超过266个赞
知道小有建树答主
回答量:322
采纳率:100%
帮助的人:227万
展开全部
c++好像不能做插入操作,只能是吧文本都读出来,做完修改,在写回去
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
aheroofeast
2012-08-11 · 超过17用户采纳过TA的回答
知道答主
回答量:80
采纳率:0%
帮助的人:41.7万
展开全部
文件中是没法插入的。只能读出来,插入后再写回去。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式