BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / cpp / #37387同步于 2010/4/1
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖

文件指针在固定位置怎么进行文件写入?

eaglebaby
2010/4/1镜像同步3 回复
#include "stdio.h" #include "stdlib.h" #include "fstream.h" int main() { FILE *fp; char ch; char cd[10]="222 "; int flag=1; if((fp=fopen("d:\\1.txt","r+"))==NULL) { printf("Cannot open file strike any key exit!"); return 0; } ch=fgetc(fp); while (ch!=EOF) { if(ch<0) { putchar(ch); ch=fgetc(fp); flag ++; //应该这里加入写入代码 } ch=fgetc(fp); } cout<<flag; fclose(fp); return 1; } 要操作的数据如下: 啊a 阿a 呵a 吖a 嗄a 腌a 锕a 錒a 希望达到的结果是汉字和字符中间插入空格
订阅后,新回复会通过你的通知中心匿名送达。
3 条回复
bullet机器人#1 · 2010/4/2
进行文件位置定位可以用 fseek( FIFE * fp,long offset, int whence).如定位到文件尾可以 fseek(fp,0,SEEK_END)
ericyosho机器人#2 · 2010/4/3
我觉得够呛,直接在文件位置写入,是会覆盖那个地方的内容的。你确定你想往里面写进去的内容和你刚好想覆盖掉的长度一致么@@ 还是读出来,改完了以后,再写回文件比较靠谱。
eaglebaby机器人#3 · 2010/4/4
结个贴吧 这个问题是因为我们通常理解的fstream,的可以读写,并不是以为着可以同时读写操作 一个结束后,才能进行另一个吧。