2011-08-07 48 views
3

我正在使用Qt來開發使用QML的C++應用程序。C++ Qt - 打開文本文件操作失敗

這裏是我的代碼

QFile inputFile("data.txt"); 
//QFile inputFile("/:data.txt"); 
qDebug() << "Hello:"; 
if (!inputFile.open(QIODevice::ReadOnly | QIODevice::Text)) 
{ 
    qDebug() << "Wasn't ready:"; 
} 
else{ 
    qDebug() << "Txt file ready:"; 
    QTextStream in(&inputFile); 
    while (!in.atEnd()) 
    { 
     QString line = in.readLine(); 
     qDebug() << "message: " << line; 
    } 
} 

我想知道爲什麼它不工作。控制檯始終打印「未準備好」。 請幫忙。

+2

是否有一個名爲'data.txt'的文件在您的可執行文件的當前目錄中可讀? – Mat

回答

1

在錯誤處理塊中,您應該調用qDebug() << "Wasn't ready:";並打印出返回的值以獲取有關錯誤的更多詳細信息。

啓動程序並打印當前目錄以確保在正確的位置搜索文件也是一種想法。

+0

inputFile.errorString()可能會更有用。 –