从C++中的文本文件中删除空行,可以通过以下步骤实现:
以下是一个简单的示例代码:
#include<iostream>
#include <fstream>
#include<string>
int main() {
// 打开文件
std::ifstream inFile("input.txt");
std::ofstream outFile("output.txt");
// 检查文件是否成功打开
if (!inFile.is_open()) {
std::cout << "无法打开输入文件"<< std::endl;
return 1;
}
if (!outFile.is_open()) {
std::cout << "无法打开输出文件"<< std::endl;
return 1;
}
// 逐行读取文件内容并检查是否为空行
std::string line;
while (getline(inFile, line)) {
if (!line.empty() && line.find_first_not_of(" \t\n\v\f\r") != std::string::npos) {
outFile<< line<< std::endl;
}
}
// 关闭文件并将新文件重命名为原文件名
inFile.close();
outFile.close();
remove("input.txt");
rename("output.txt", "input.txt");
return 0;
}
这个示例代码将读取名为input.txt
的文件,并将非空行写入名为output.txt
的新文件。然后,它将关闭这两个文件,并将新文件重命名为原文件名。
领取专属 10元无门槛券
手把手带您无忧上云