
C语言文件操作,如何读写中文文本文件 20
1个回答
展开全部
你以什么方式打开文件的~?如果是二进制的话那乱码就是因为转换字符错误。
先看一下输入输出方式是否与新的文本文件匹配,可能与文本的编码方式有关。
另外看看你的数组设置,一般认为“一行”是第一个维度,“列”是第二个维度,“页”是第三个维度。对于“一列”数据来说,它把每行的那个数据认为是一个一维数组(这个一维数组是一个行数组,只有一个数据,其余为空),那个维度可以认为是空。
这里是一个模板,你试试~
FILE *fp1,*fp2;
char ch;
fp1=fopen("文件路径,记得用转义字符转义斜线","r");
fp2=fopen("文件路径,记得用转义字符转义斜线","a");
ch=fgetc(fp1);
while(ch!=EOF)
{
fputc(ch,fp2);
ch=fgetc(fp1);
}
fclose(fp1);
fclose(fp2);
//没有加判断文件指针获取是否成功的验证,如果需要,你自己加上就行
先看一下输入输出方式是否与新的文本文件匹配,可能与文本的编码方式有关。
另外看看你的数组设置,一般认为“一行”是第一个维度,“列”是第二个维度,“页”是第三个维度。对于“一列”数据来说,它把每行的那个数据认为是一个一维数组(这个一维数组是一个行数组,只有一个数据,其余为空),那个维度可以认为是空。
这里是一个模板,你试试~
FILE *fp1,*fp2;
char ch;
fp1=fopen("文件路径,记得用转义字符转义斜线","r");
fp2=fopen("文件路径,记得用转义字符转义斜线","a");
ch=fgetc(fp1);
while(ch!=EOF)
{
fputc(ch,fp2);
ch=fgetc(fp1);
}
fclose(fp1);
fclose(fp2);
//没有加判断文件指针获取是否成功的验证,如果需要,你自己加上就行
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询