Russian Qt Forum
Май 05, 2024, 00:59 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Считать из текстового файла...  (Прочитано 3227 раз)
BaltikS
Гость
« : Ноябрь 07, 2005, 12:57 »

Доброго всем дня.. хорошего времени суток!
Вопрос собственно заключается в следующем:
Я построчно считываю из текстового файла так
Код:
QStringList lines;
    QFile file( "file.txt" );
    if ( file.open( IO_ReadOnly ) ) {
        QTextStream stream( &file );
        QString line;
        int i = 1;
        while ( !stream.atEnd() ) {
            line = stream.readLine(); // line of text excluding '\n'
            printf( "%3d: %s\n", i++, line.latin1() );
            lines += line;
        }
        file.close();
    }
   
как сказано в справке....
Но при маленьком файле - всё работает идеально...
Но при текстовом файле объёмом около и более Мб программа виснет.
Как быть?
Использую QT 3.3.5 под Windows
Записан
C.H.
Гость
« Ответ #1 : Ноябрь 07, 2005, 14:27 »

Странно у меня в QT4 под форточки с твоим кодом работает за милую душу, может глюк в Ку3?

Код подправил немного:
Код:

#include <QtGui>

int main( int argc, char **argv )
{
QStringList lines;
    QFile file( "file.txt" );
    if ( file.open( QFile::ReadOnly ) ) {
        QTextStream stream( &file );
        QString line;
        int i = 1;
        while ( !stream.atEnd() ) {
            line = stream.readLine(); // line of text excluding '\n'
            qDebug() << i++ << line;
            lines += line;
        }
        file.close();
    }
return 0;
}
Записан
Alikus
Гость
« Ответ #2 : Апрель 03, 2006, 23:40 »

Цитата: "BaltikS"
Но при маленьком файле - всё работает идеально...
Но при текстовом файле объёмом около и более Мб программа виснет.
Как быть?
Использую QT 3.3.5 под Windows


У меня 3.3.3. Этот же код недавно (сам использовал) работал как по маслу Улыбающийся
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.042 секунд. Запросов: 20.