|
1Qter豆
本帖最后由 edg233 于 2017-5-10 20:18 编辑
我的问题是:可以写文件,并且open文件正常,无法读出文件内容,怎么改都不行,求助帮忙 感谢
//文件地址 QString WordFileAddr = "C:/Users/l/Desktop/word.txt"; QFile EngWordFile(WordFileAddr); //文件打开并判断
if(!EngWordFile.open(QIODevice::ReadWrite | QIODevice::Append))
{ qDebug("open file failed"); exit(1); }
//判断文件大小,这边的打印正常,能打印出文件正常大小
int size = EngWordFile.size();
qDebug("full file size is %d",size);
// 在这边做了一个测试打印,发现EngWordFile.atEnd()的赋值是TRUE,不理解为什么会这样,因为值为TRUE 直接后面的循环都没进。我的文件里确定是有东西的
qDebug()<<EngWordFile.atEnd();
//读文件试过的两种方法
while(!EngWordFile.atEnd()) {
QByteArray line = EngWordFile.readLine();
QString str(line);
qDebug()<< str; }
/* QTextStream in(&EngWordFile);
in.setCodec("utf-8");
QString line = in.readLine();
qDebug() << line.isNull();
while(!line.isNull()){ qDebug() << line; ui->textBrowser->setText(line);*/
EngWordFile.close();}
|
最佳答案
查看完整内容
把打开方式改了,不要QIODevice::Append,这个模式默认去读文件末尾,你当然读不到
|