c++修改txt数据

比如我有一个123.txt文档,里面是1~9,我想把3修改并且保存而不影响其他数据,应该怎么做呢?里面的元素不一定是数字的,符号型的如果用到文件参数名的话希望可以用fil... 比如我有一个123.txt文档,里面是1~9,我想把3修改并且保存而不影响其他数据,应该怎么做呢?里面的元素不一定是数字的,符号型的
如果用到文件参数名的话希望可以用 file1这样比较容易懂的。。。
最好用ifstream,ofstream之类的文件流吧。。。。
展开
 我来答
汐日南莘
推荐于2016-02-12 · TA获得超过1.4万个赞
知道大有可为答主
回答量:1.6万
采纳率:45%
帮助的人:7586万
展开全部
#include <fstream>
#include <iostream>
using namespace std;
int main()
{
 ifstream infile("123.txt",ios::in);/*要在存放VC++MyProjects里面的当前文件建立一个txt文本 位置也可以改成其它地方*/
 if(!infile)
 {
  cout<<"open error!"<<endl;
  exit(1);
 }
 ofstream outfile("fl.txt",ios::out);//存放位置可以改成其他地方如c:fl.txt
 if(!outfile)
 {
 cout<<"open eror!"<<endl;
 exit(1);
 }
 char str;
 while(infile.get(str))//从文件读取字符  
 {
  if(str=='3')
   str=' ';//如果要把3改成其它字符则把空格换成其它字符
  outfile.put(str);//输出到文件fl.txt中
 }
 infile.close();//关闭文件
 outfile.close();//关闭文件
 return 0;
}

 还有问题的话,可以追问

更多追问追答
追问
啊,是在不好意思。。。前几天一直有事都没上百度。。。。那个,先谢一下,我觉得这个有注释是非常好的!谢谢!
还有就是想问下,你这个是输出保存在另一个文档中的,怎么把它保存在原文档呢?谢谢!
追答

这个是保存在你建的工程里面的,里面有cpp文件等,这个文档不是和cpp文件在一起的。

就以我的为例子吧。我说下怎么找到这个文档。我不知道你说的保存在原文档是什么意思


因为我的VC++是存放在D盘的,所以先打开D盘,然后找到VC++,打开该文件然后打开myproject文件,然后打开你所建立的工程,里面就有你要找的文件

打开D盘中的MSDev98文件(这时我的VC++文件)

然后看到

打开myproject文件  看到

打开这个工程文件  看到

用笔签了的那个就是文本文档

chujiangke001
2013-06-14 · TA获得超过1605个赞
知道小有建树答主
回答量:1352
采纳率:0%
帮助的人:696万
展开全部


#include<iostream>

#include<string>

#include<fstream>


using namespace std;

void change(string &a,char b)

{

for(int i=0;i<(int)a.size();i++)

if(a[i]=='3')

a[i]=b;

}

int main(){

cout<<"input the filename:";

string filename;

cin>>filename;

ifstream infile(filename.c_str(),ios::app);

ofstream outfile("outfile.txt");

string temp;

cout<<"input the char your want to instand of 3:"<<endl;

char b;

cin>>b;

while(infile>>temp){


change(temp,b);

outfile<<temp<<" ";

}

return 0;

}


已赞过 已踩过<
你对这个回答的评价是?
评论 收起
KevenStar2009
2013-06-14 · 超过12用户采纳过TA的回答
知道答主
回答量:62
采纳率:0%
帮助的人:37.5万
展开全部
从file1中读取数据,修改要修改的字符,将修改完成的结果写入临时文件file2中
全部修改完成后,将file2重命名为file1
追问
怎么覆盖?可以贴下代码么,完整的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式