求助!关于文件边读边写
我的程序需要在读入文件的时候同时判断读入的信息是否合符要求,如果不符合要求的话就得把文件的当前行全部替换为空格,但问题就在于我的程序始终无法正常工作。代码如下:
#include <fstream>
#include <iostream>
using namespace std;
int main()
{
fstream infile("1.txt",ios::in ¦ios::out);
/*******不断读入文件数据*******/
/******………………………………*******/
/*****发现数据不合法,需要将当前行替换******/
char ctemp;
ctemp = '0';
while(ctemp != '\n')
{
infile.put(' ');
ctemp = infile.get();
}
return 0;
}
程序进入了死循环,无法读入也无法写入(devcpp)或只能不断地往里面写入空格(VC2005).如果删除其中的infile.put(' ');和ctemp = infile.get();的其中一句,程序就可以正常退出了,但显然这不是我要的结果,还请各位达人赐教,问题究竟出在哪里呢?怎样才能实现我需要的功能呢?(文件存在而且有内容,打开也成功了)