C++ ifstream 获取 除最后一行以外的所有内容
时间: 2023-09-13 10:05:21 浏览: 104
可以通过以下步骤实现:
1. 打开文件并读取所有行
2. 关闭文件
3. 删除最后一行
4. 打开文件并写入除最后一行以外的所有内容
5. 关闭文件
以下是示例代码:
```c++
#include <iostream>
#include <fstream>
#include <vector>
#include <string>
int main() {
std::string fileName = "example.txt";
std::ifstream inputFile(fileName);
// 读取所有行
std::vector<std::string> lines;
std::string line;
while (std::getline(inputFile, line)) {
lines.push_back(line);
}
inputFile.close();
// 删除最后一行
lines.pop_back();
// 写入除最后一行以外的所有内容
std::ofstream outputFile(fileName);
for (const auto& line : lines) {
outputFile << line << std::endl;
}
outputFile.close();
return 0;
}
```
注意:这种方法会覆盖原始文件,请确保要删除的行是最后一行,并且备份原始文件。
阅读全文