2016-06-09 64 views
0

我正在寫一個專用的工具。問題是Qt無法讀取包含all contents published here的文本文件。C++ Qt無法讀取整個文本文件

它只讀取this 這三點被Qt粘貼。

我讀文件的代碼如下

QFile file; 
file.setFileName(m_filename); 
if (!file.open(QIODevice::ReadOnly)) 
    return; 

QTextStream in(&file); 

while (!in.atEnd()) { 
    m_fileContents += in.readLine(); 
} 
file.close(); 

你有任何想法,爲什麼它不工作?

+0

我試過C++的std庫。即使這些只會讀~895個字符。 – IceTrailer

回答

2
QFile file; 
file.setFileName(m_filename); 
if (!file.open(QIODevice::ReadOnly)) 
    return; 

m_fileContents = file.readAll(); 
+0

不起作用。它只讀取895個字符。 – IceTrailer

+0

你的文件大小是多少? =) – evilruff

+0

好吧,等等。文件大小爲895字節,但代碼中出現錯誤。 – IceTrailer

1

我剛剛在自己的計算機上用您的數據測試了您的代碼,它運行良好。 如果您使用的是IDE,也許它不會顯示最終字符串的所有文本,這就是爲什麼您的示例結尾處有三個點。

也作爲邪惡的建議你可以直接使用QFile :: readAll方法。