История изменений
Исправление XMs, (текущая версия) :
Ну а кто будет проверять, что readAll() у тебя там считало? К тому же, оно возвращает QByteArray, а не QString. И пусть второе можно получить из первого, так делать не нужно, ибо если файл будет очень большим, тебе никакой памяти не хватит. Вместо этого тебе надо всего лишь в цикле дёргать QTextStream::readLine(), пока не дойдёшь до нужной тебе строки, хоть третьей, хоть тысячной.
QFile file("filename");
if (file.open(QIODevice::ReadOnly))
{
const size_t linenum = 3;
QTextStream s(&file);
QString line;
for (size_t i = 0; i < linenum; i++)
line = s.readLine();
...
file.close();
}
Исправление XMs, :
Ну а кто будет проверять, что readAll() у тебя там считало? К тому же, оно возвращает QByteArray, а не QString. И пусть второе можно получить из первого, так делать не нужно, ибо если файл будет очень большим, тебе никакой памяти не хватит. Вместо этого тебе надо всего лишь в цикле дёргать QTextStream::readLine(), пока не дойдёшь до нужной тебе строки, хоть третьей, хоть тысячной.
QFile file("filename");
if (file.open(QIODevice::ReadOnly))
{
const size_t linenum = 3;
QTextStream s(&file);
QString line;
for (size_t i = 0; i < linenum; i++)
line = s.readLine();
...
file.close();
}
Исправление XMs, :
Ну а кто будет проверять, что readAll() у тебя там считало? К тому же, оно возвращает QByteArray, а не QString. И пусть второе можно получить из первого, так делать не нужно, ибо если файл будет очень большим, тебе никакой памяти не хватит. Вместо этого тебе надо всего лишь в цикле дёргать QTextStream::readLine(), пока не дойдёшь до нужно тебе строки, хоть третьей, хоть тысячной.
QFile file("filename");
if (file.open(QIODevice::ReadOnly))
{
const size_t linenum = 3;
QTextStream s(&file);
QString line;
for (size_t i = 0; i < linenum; i++)
line = s.readLine();
...
file.close();
}
Исправление XMs, :
Ну а кто будет проверять, что оно у тебя там считало? К тому же, readAll() возвращает QByteArray, а не QString. И пусть второе можно получить из первого, так делать не нужно, ибо если файл будет очень большим, тебе никакой памяти не хватит. Вместо этого тебе надо всего лишь в цикле дёргать QTextStream::readLine(), пока не дойдёшь до нужно тебе строки, хоть третьей, хоть тысячной.
QFile file("filename");
if (file.open(QIODevice::ReadOnly))
{
const size_t linenum = 3;
QTextStream s(&file);
QString line;
for (size_t i = 0; i < linenum; i++)
line = s.readLine();
...
file.close();
}
Исправление XMs, :
Ну а кто будет проверять, что оно у тебя там считало? К тому же, readAll() возвращает QByteArray, а не QString. И пусть второе можно получить из первого, так делать не нужно, ибо если файл будет очень большим, тебе никакой памяти не хватит. Вместо этого тебе надо всего лишь в цикле дёргать QTextStream::readLine(), пока не дойдёшь до нужно тебе строки, хоть третьей, хоть тысячной.
QFile file("filename");
if (file.open(QIODevice::ReadOnly))
{
const size_t linenum = 3;
QTextStream s(&file);
QString line;
for (size_t i = 0; i < linenum; i++)
line = s.readLine();
...
file.close();
}
Исходная версия XMs, :
Ну а кто будет проверять, что оно у тебя там считало? К тому же, readAll() возвращает QByteArray, а не QString. И пусть второе можно получить из первого, так делать не нужно, ибо если файл будет очень большим, тебе никакой памяти не хватит. Вместо этого тебе надо всего лишь в цикле дёргать QTextStream::readLine(), пока не дойдёшь до нужно тебе строки, хоть третьей, хоть тысячной