Qt从QTextStream读取

时间:2013-07-16 12:44:03

标签: c++ qt qt5

我正在尝试读取文本文件并在QPlainTextEdit中显示内容。请你能指出我做错了什么:

QFile jsonFile("data.json");  

if (!jsonFile.open(QIODevice::ReadOnly | QIODevice::Text))
{
    qDebug() << "Failed to open file";
    qDebug() << jsonFile.errorString();
    return;
}
else
{
    qDebug() << "File opened";
} //It returns that the file opened successfully

qDebug() << "File Exists?: " << jsonFile.exists(); //Yep, it exists.

QTextStream outStream(&jsonFile);
QString textString = outStream.readAll();
qDebug() << "Text string: " << textString; //textString is empty! ""
ui->fileToPost->setPlainText(textString); //fileToPost is the QPlainTextEdit
jsonFile.close();

如果我做的话

QString textString = "The cat sat on the mat";

显示正常。问题是没有从流(或可能是文件)中读取任何内容。

1 个答案:

答案 0 :(得分:1)

尝试检查文件的绝对路径,可能它不在哪里,您期望它:qDebug()<<QFileInfo("data.json").absoluteFilePath();