C语言读入txt文件中的中文字符输出乱码

**记录下自己在文件操作上遇到的常见问题**

输出乱码的情况

在使用C语言时我们一般用fopen函数打开文件,如下

#include<stdio.h>
int main()
{
    
    
	FILE *fp;
	char a[10];
	fp=fopen("temp.txt","r");
	fscanf(fp,"%s",a);
	printf("%s\n",a);
	return 0;
}

如果输出的都是乱码的话
打开对应的temp.txt文本文件,左上角选择文件将其另存为,最下面的编码将UTF-8改为ANSI并保存,再输出就可以正常输出文字了(注意不要超出内存空间)。

fopen函数读写的相关操作

函数fopen的一些操作应用

fopen("***.txt","w");

使用fopen函数打开文件时,如果想在原有的基础上继续写入数据,使用aw会先清空文档中的原始数据,而a是在文档的末尾追加写入数据,指针指向文档末尾。
也可使用r+,r+w+都是读写模式,不同的是w+会先清空文件。

猜你喜欢

转载自blog.csdn.net/Alkaid_J/article/details/112604371