c++如何将一个文本文件读入一个字符串并在删除某个字符串后写入另一个文本文件

谢谢
#include<fstream>
#include<iostream>
#include<string>
using namespace std;
void delstr(char *n,char *a);
int main()
{char n[300];
char a[30];
ifstream fin;
int k=0;
fin.open ("d:\\abc.txt", ifstream::in);
while (fin.good()){
fin.get(n[k]);
cout << n[k];
k++;}
fin.close();
cout<<"请输入你要删除的内容: ";cin>>a; delstr(n,a); cout<<"剩余内容如下:"<<n<<endl;
//ifile.close();
ofstream ofile2("d:\\abcd.txt");
ofile2<<n[k];
ofile2.close();
return 0;
}
void delstr(char *n,char *a)

[ char *h=n; int len=strlen(a); while(1)

{if(memcmp(n,a,len)==0)
memmove(n,n+len+1,strlen(n+len+1)+1);
while(*n++!=',')
if(!*n)
return ;
}
} 按照这个改一下就可以了

#include <fstream>
using namespace std;
ifstream in("file.in");//file是in文件的文件名
ofstream out("file.out");
int main (){
char s[10000];//数组要留下适当的空间
in>>s;
int i,len=strlen(s);
in>>i;
i--;//该代码用的是0下标,所以读入的i需要减一
while (i<len){
s[i]=s[++i];//erase工作,清除第i个元素
}
out<<s<<endl;
return 0;
}

输入输出说明:
file.in文件:
abcdefg
3
(备注:如何创建in文件?先新建source file,写好文件内容后,如下图,保存时选择类型“All files”,再写上文件名file.in。file的名称是可以改的,in类型也可以改为扩展名为txt或其他的文件格式。当然最好用in类型。ifstream 后接的是代码中的输入流名称,可以是cin,或是任意单词,(“”)内的就是文件名.扩展名,这很重要。)
file.out文件:
abdefg
(备注:该文件是编译运行后自动与exe文件一同生成的,当然也可以提前创建。)

另外的格式:
#include <iostream>
using namespace std;
int main (){
freopen("file.in","r",stdin);
freopen("file.out","w",stdout);
scanf(".....");
printf ("....");
return 0;
}
还有一种文件指针的c语言格式(太老了,而且很麻烦,还要申请释放空间,弄不好还会出错,我就不提了,各种书上都有讲到)
温馨提示:答案为网友推荐,仅供参考
相似回答