文件保存问题
我用两种方法将从键盘输入的一串字符保存在两个不同的文件中,可在文件中却显示不一样,用write函数字进文件中出现乱码,请问这是什么原因?
代码如下:
#include <fstream.h>
#include <stdlib.h>
void main()
{
fstream fin;
char filename1[20],filename2[20];
char str[100];
cout<<"请输入文件名:";
cin>>filename1;
cout<<"请输入要保存的信息:";
cin>>str;
fin.open(filename1,ios::app);
if(!fin)
{
cout<<"Can not open file!"<<endl;
exit(0);
}
fin<<str<<endl;
fin.close();
cout<<"请输入文件名:";
cin>>filename2;
fin.open(filename2,ios::app);
if(!fin)
{
cout<<"Can not open file!"<<endl;
exit(0);
}
fin.write((char *)str,sizeof(str));
fin.close();
}