QFile如何去除文件的空行
时间: 2023-11-22 12:53:41 浏览: 165
去除文件空行的工具
可以使用QTextStream来对文件进行处理,具体步骤如下:
1. 使用QFile打开文件,读取文件内容,并将内容存储到QString中。
```
QFile file("file.txt");
if(!file.open(QIODevice::ReadOnly | QIODevice::Text))
return;
QString content = QLatin1String(file.readAll());
```
2. 使用QTextStream对QString进行读写操作,将文件内容逐行读取并去除空行。
```
QStringList lines = content.split("\n");
QStringList nonEmptyLines;
foreach (QString line, lines) {
if(!line.trimmed().isEmpty()) {
nonEmptyLines.append(line);
}
}
```
3. 将去除空行后的内容写回到文件中。
```
if(!file.open(QIODevice::WriteOnly | QIODevice::Text))
return;
QTextStream out(&file);
foreach (QString line, nonEmptyLines) {
out << line << "\n";
}
```
完整的代码示例如下:
```
QFile file("file.txt");
if(!file.open(QIODevice::ReadOnly | QIODevice::Text))
return;
QString content = QLatin1String(file.readAll());
QStringList lines = content.split("\n");
QStringList nonEmptyLines;
foreach (QString line, lines) {
if(!line.trimmed().isEmpty()) {
nonEmptyLines.append(line);
}
}
if(!file.open(QIODevice::WriteOnly | QIODevice::Text))
return;
QTextStream out(&file);
foreach (QString line, nonEmptyLines) {
out << line << "\n";
}
```
阅读全文