2016-06-09 3 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

Я пробовал std libs из C++. Даже они будут читать только 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 напрямую.

Смежные вопросы