作者timohu ( )
看板C_and_CPP
标题[问题] 一行一行的读读文字档[MFC]
时间Wed Feb 25 18:53:47 2009
我的目的是要打开一个文字档
然後一次读一行,再把资料放到BUFF里
参考的别人的CODE~但是下面这个写法都会漏掉每行的第一个
CStdioFile file;
file.Open("d:\data.txt",CFile::modeRead);
int i = 0;
char tmp[70];
char ch;
while(1)
{
file.Read( &ch, 1);
if( ch == '\n' )
break;
tmp[i] = ch;
i++;
}
例如data.txt内容是
123465
ABCDE
结果第一次读到的变成tmp[0] = 0x32
而我想得到的应该是tmp[0] = 0x31, tmp[1] = 0x32.........
请问是哪边要修改吗?
本来是要用file.ReadFile()或是其他函数
但是网路找的半天还是不太懂要怎麽才能依次的读取每一行
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 219.87.152.131
1F:推 ichart:您可以用fgets()一次拿到整行字串 02/25 19:32
2F:→ timohu:可是不确定长度(每行都不一样),这样还可以用fgets吗? 02/25 19:56
3F:→ tsaiminghan:可以 gets就是抓到换行为止, buff要够大 02/25 21:25