求大神帮忙,c++里怎么修改文件中某部分内容,而不改变其他位置的内容,最好有例子有注释,谢谢

如题所述

1、打开文件(fopen或open),
2、定位到修改部分(seek);
3、读内容到缓存中(使用new或malloc分配)(read)
4、修改缓存中数据
5、重新定位到上次修改位置(seek)

6、写缓存中数据到文件中(write)
7、关闭文件(fclose或close)追问

能写个代码吗,我是初学者,谢谢

温馨提示:内容为网友见解,仅供参考
无其他回答

求大神帮忙,c++里怎么修改文件中某部分内容,而不改变其他位置的内容,最...
1、打开文件(fopen或open),2、定位到修改部分(seek);3、读内容到缓存中(使用new或malloc分配)(read)4、修改缓存中数据 5、重新定位到上次修改位置(seek)6、写缓存中数据到文件中(write)7、关闭文件(fclose或close)

如何用c++程序修改txt文件指定内容
updatedata();file *pfile = fopen(m_path,"r+t");\/\/以读写形式打开文件 if (pfile)\/\/判断文件是否被正确打开 { fseek(pfile,m_goto,seek_set);\/\/定位文件 cstring str = m_text + m_file.right(m_file.getlength()-m_goto);\/\/设置字符串 fputs(str.getbuffer(0),pfile); \/\/向文件...

c++怎样修改文本文档的一行内容
需要把原来的文件覆盖掉,除非第二行的长度和原来的长度一样 include <stdio.h> include <string.h> int main(void){ FILE *fp;char buffer[3][1001];if ((fp=fopen("abc.txt","r"))==NULL){ puts("打开文件失败");return;} fgets(buffer[0],1000,fp);fgets(buffer[1],1000,fp);...

C++修改TXT文件中的内容
= NULL) { \/\/ printf("%s\\n", buff); char a[100]; int b, c; \/* 全部读出来存在变量里面 *\/ sscanf(buff, "%s %d %d\\n", a, &b, &c); \/\/ printf("a = %s, b = %d, c = %d\\n", a, b, c); \/* 这里做更改, 比如:比较名字,如果是xiaozhu...

c++修改或者删除txt中内容的某一行
include <string> include <fstream> include <ostream> include <cstdlib> using namespace std;void main(){ fstream file("in.txt");string line;int n,count=0;ofstream outfile("in2.txt",ios::out|ios::trunc);cout<<"Please input the line number you want to del:"<<endl;cin>>n...

C++如何向txt文件写入内容而不会使原内容覆盖掉?
第二个参数有多种设置方式,你可以去查阅一下fopen的百科...a 以附加的方式打开只写文件。若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾,即文件原先的内容会被保留。(EOF符保留) a+ 以附加方式打开可读写的文件。若文件不存在,则会建立该文件,如果文件存在,写入的...

C++ 文件流,怎样删除文件中的一部分内容?
\/\/将文件的内容存入容器中vector<string>::iterator it; \/\/使用迭代器cout << "输入你想删除的内容:";cin >> str; for(it = b.begin() ; it

c++怎么修改删除文本文件里用户输入的内容?
要修改或删除文本文件中的内容,您需要进行以下步骤:打开文件:使用C++的文件处理库中的 fstream 类打开文件,并设置为输入输出模式。include <fstream> include <iostream> using namespace std;int main() { fstream file;file.open("example.txt", ios::in | ios::out);if (!file) { cout <...

C++中如何在已存在的文本文档中继续输出内容而不覆盖掉原文档中的内容...
打开文件方式中含“a”,表示用尾部附加方式打开,如:fp=fopen("chess.txt","a"); \/\/ 打开文本文件,自文件尾部写入 fp=fopen("chess.bin","ab"); \/\/ 打开二进制文件,自文件尾部写入

...c++ 怎么让输出的值保持一个位置不停地更新,而不是一个占一格的pri...
上面的那种方法太***, 悲催。 你直接调用一个API吧光标移动一下,这种方法可以修改控制台输出的内容!或者还有一种方法:你的程序显示 60 % 肯定是在同一行,那么每次输出 **%的时候 在字符串后面加上 \\r , 然后下一次输出的时候在把这行重新输出一遍就可以了。

相似回答