Russian Qt Forum

Qt => Общие вопросы => Тема начата: Blackwanderer от Март 27, 2010, 16:49



Название: readLine() читает строку только со второго раза.
Отправлено: Blackwanderer от Март 27, 2010, 16:49
Доброго времени суток!
Столкнулся со следующей проблемой: есть текстовый файл, состоящий из одной строки со словом "true". Файл читается с помощью QTextStream. При первом вызове функция readLine() возвращает пустую строку и лишь при повторном вызове возвращается строка "true". В чем может быть причина такого поведения?


Название: Re: readLine() читает строку только со второго раза.
Отправлено: Пантер от Март 27, 2010, 16:56
Приведи код и приложи исходный файл.


Название: Re: readLine() читает строку только со второго раза.
Отправлено: Blackwanderer от Март 27, 2010, 17:13
Код:
QTextStream instream(&file);
file.setFileName(filename_net);
bool test = file.exists();
file.open(QIODevice::ReadOnly | QIODevice::Text);

//instream.readLine();
if(instream.readLine() == "true")
    m_NetInInitialState = true;
else
    m_NetInInitialState = false;
file.close();

1000net.txt - файл из которого идет считывание.


Название: Re: readLine() читает строку только со второго раза.
Отправлено: Пантер от Март 27, 2010, 17:18
Попробуй сначала открыть файл, а потом уже связывать с ним QTextStream.


Название: Re: readLine() читает строку только со второго раза.
Отправлено: Blackwanderer от Март 27, 2010, 17:25
Попробуй сначала открыть файл, а потом уже связывать с ним QTextStream.
Спасибо! Помогло!