我需要查找並替換文本文件中的某些文本。我搜索了一下,發現最簡單的方法是從文件中讀取所有數據到QStringList,找到並用文本替換確切的行,然後將所有數據寫回到我的文件。這是最短的路嗎?你能提供一些例子嗎? UPD1我的解決方案是:QT:查找並替換文件中的文本
QString autorun;
QStringList listAuto;
QFile fileAutorun("./autorun.sh");
if(fileAutorun.open(QFile::ReadWrite |QFile::Text))
{
while(!fileAutorun.atEnd())
{
autorun += fileAutorun.readLine();
}
listAuto = autorun.split("\n");
int indexAPP = listAuto.indexOf(QRegExp("*APPLICATION*",Qt::CaseSensitive,QRegExp::Wildcard)); //searching for string with *APPLICATION* wildcard
listAuto[indexAPP] = *(app); //replacing string on QString* app
autorun = "";
autorun = listAuto.join("\n"); // from QStringList to QString
fileAutorun.seek(0);
QTextStream out(&fileAutorun);
out << autorun; //writing to the same file
fileAutorun.close();
}
else
{
qDebug() << "cannot read the file!";
}
你應該嘗試一下,併發布代碼,如果你失敗... –