首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

怎样改写一个文件中的一行?该如何解决

2012-02-20 
怎样改写一个文件中的一行?怎样改写一个文件中的一行?改写前后的文本长度可能不相同。最好不要建立临时文件

怎样改写一个文件中的一行?
怎样改写一个文件中的一行?改写前后的文本长度可能不相同。最好不要建立临时文件。

[解决办法]
以下做法必须保证被修改行修改前后的长度一样
fstream pf;
pf.open( "test.txt ");

string str ;
getline(pf, str);
int len = str.length();
pf.seekp(0);

str = "hello ";
pf < < str;
....
[解决办法]
#include <stdio.h>

int main(void)
{
FILE *fp;
char buf[10]= "aaaa ";
fp=fopen( "abc.dat ", "r+ ");
while( '\n '!=fgetc(fp));
fseek(fp,0,SEEK_CUR);
fprintf(fp, "%s ",buf);
return 0;
}

热点排行
Bad Request.