全心思齐网

C++中如何修改一个指定文件的指定内容?

1、<fstream>头文件。

2、ofstream类读取文件指定内容,ifstream类修改文件内容。

3、<vector>头文件,<string>头文件,负责按行保存ifstream读入的数据。

4、示例代码:(这个程序是删除Ollydbg.ini文件中,[Settings]标记后的内容)原结构为:#include<string>#include<fstream>#include<vector>#include<algorithm>using namespace std;int main(){ ifstream infile("E:\\Visual Studio 2012\\Projects\\Primer_V4\\Primer_V4\\Ollydbg.ini"); if(infile) { cout << "Ollydbg.ini is open sucess." << endl; } else { cerr << "Ollydbg.ini is fail." << endl; return 0; } string line; vector<string> lines; while(getline(infile,line),!infile.eof()) { lines.push_back(line); } infile.clear(); infile.close(); vector<string>::iterator beginPos = find(lines.begin(),lines.end(),"Symbolic data path = "); vector<string>::iterator endPos = find(lines.begin(),lines.end(),"[Settings]"); for(vector<string>::iterator it = beginPos+1;it!=endPos;it++) { it->erase(it->find_first_of(" "),string::npos); } ofstream outfile("E:\\Visual Studio 2012\\Projects\\Primer_V4\\Primer_V4\\Ollydbg_backup.ini"); if(outfile) { cout << "Ollydbg_backup.ini is open sucess." << endl; } else { cerr << "Ollydbg_backup.ini is fail." << endl; return 0; } for(vector<string>::iterator it=lines.begin();it!=lines.end();it++) { outfile << *it << endl; } outfile.clear(); outfile.close(); return 0;}

匿名回答于2024-05-25 18:45:01


相关知识问答