Я вручную записываю события из моего приложения QT в текстовый файл.
Я отслеживаю, сколько строк я записываю в текстовый файл, и когда я получаю определенную сумму, я хочу начать удаление первой строки.
Мне не следует открывать и читать весь текстовый файл каждый раз, когда я хочу удалить первую строку, поскольку текстовый файл становится большим.
Это то, что я имею до сих пор:
if (file.open(QIODevice::Append)) {
QTextStream stream(&file);
stream << timeStamp+typeStamp+" "+message << endl;
stream.flush();
file.close();
LOG_COUNT++;
} else {
qWarning()<<"Utils::writeToLog - unable to write to log file";
}
if(LOG_COUNT > 5000){
LOG_COUNT--;
QFile inputFile(filename);
if (inputFile.open(QIODevice::ReadWrite))
{
QTextStream in(&inputFile);
QString line1 = in.readLine();
QString line2 = in.readLine();
qWarning()<<"LINE 1 "<<line1;
qWarning()<<"LINE 2 "<<line2;
//Replace line 1 & 2 with just line 2?
inputFile.close();
}
}