用c++改文本文件内容,改第17行“=”后边的字符串
时间: 2024-03-12 07:45:52 浏览: 57
C++更改文本
可以使用以下代码来实现:
```cpp
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main()
{
// 打开文本文件
ifstream infile("example.txt");
if (!infile.is_open()) {
cout << "无法打开文件!" << endl;
return 1;
}
// 读取文件内容
string line;
int line_num = 0;
while (getline(infile, line)) {
line_num++;
if (line_num == 17) {
int pos = line.find('=');
if (pos == string::npos) {
cout << "第17行没有 '=' 字符!" << endl;
return 1;
}
line = line.substr(0, pos+1) + "new_string"; // 将 '=' 后面的字符串改为 "new_string"
}
}
// 关闭文件
infile.close();
// 重新写入文件
ofstream outfile("example.txt");
if (!outfile.is_open()) {
cout << "无法写入文件!" << endl;
return 1;
}
infile.open("example.txt");
while (getline(infile, line)) {
outfile << line << endl;
}
// 关闭文件
infile.close();
outfile.close();
cout << "操作完成!" << endl;
return 0;
}
```
请将 `example.txt` 替换为你要修改的文本文件的文件名。注意,这段代码只适用于修改第17行存在 '=' 字符的情况,如果不存在,请根据实际情况进行修改。同时,请将 "new_string" 替换为你想要改变的字符串。
阅读全文