【发布时间】:2010-05-26 07:20:58
【问题描述】:
我正在使用以下代码从文本文件中读取行。处理线大于限制 SIZE_MAX_LINE 的情况的最佳方法是什么?
void TextFileReader::read(string inFilename)
{
ifstream xInFile(inFilename.c_str());
if(!xInFile){
return;
}
char acLine[SIZE_MAX_LINE + 1];
while(xInFile){
xInFile.getline(acLine, SIZE_MAX_LINE);
if(xInFile){
m_sStream.append(acLine); //Appending read line to string
}
}
xInFile.close();
}
【问题讨论】:
-
其实我很想知道如何处理函数设置的eofbit和failbit
-
如果你使用 std::strings 你不需要测试大小限制
-
那么读取一行的大小是多少?
-
无论读取行的大小。
std::string在运行时根据需要动态扩展。
标签: c++