我正在尝试读取CSV文件。我的代码如下。我遇到的问题是,正如预期的那样读入文件的第一行,但是一旦达到while循环条件,File.atEnd将返回true。我已经尝试过几个文件,一些非常大,但它仍然只读取CSV文件的第一行。我已经介入了调试器,无法找到原因。 运行Win7 Pro(64位) Qt v5.0.1(32位) QDesigner v2.6.2。
更新:如果我有一个包含大量列的CSV文件,那么
QFile File(strFileName);
File.open(QIODevice::ReadOnly | QIODevice::Text);
QTextStream FileStream(&File);
while( !File.atEnd() )
{
QString strLine = FileStream.readLine();
//Do some code here
}
File.close();
CSV文件示例:
1,10,20
2,20,30
3,30,40
答案 0 :(得分:0)
尝试更改
while( !File.atEnd() )
到
while( !FileStream.atEnd() )