C语言如何从txt文件中读入汉字并将其存在字符串数组中?...

大哥大姐帮我教一下,C语言如何从txt文件中读入汉字并将其存在字符串数组中?...
最新回答
柏拉图爱恋

2024-11-29 10:21:42

程序代码:

#include <stdio.h>

#include <stdlib.h>

#define MAXSIZE 1024

int main(int argc, char * argv[])

{

FILE *fp;

char buf[MAXSIZE];

fp = fopen("./hanzi.txt","r");

if(fp == NULL)

{

perror("call to fopen!");

exit(1);

}

fread(buf,1,MAXSIZE,fp);

printf("%s\n",buf);

return 0;

附 hanzi.txt文件内容:

你好,很高兴认识你!希望你的人生的每一天都会像今夜的星辰一样,灿烂无比!

运行结果截图:

〆剩余的表白

2024-11-29 13:49:50

汉字比较复杂,在ANSI标准里面是两个字节连着表示一个汉字.对于每一个字节,二进制都是以1开头,即大于127的字符.
也即,你每次读入两个字符即可.输出%c%c即可拼接出原来的汉字.
鲜奶千层雪

2024-11-29 14:56:48

#include<stdio.h>
void main()
{
FILE *fp;//定义FILE结构指针变量
char ch;
if((fp=fopen("datafile.txt","r"))==NULL)//打开并测试文件
{
printf("file cannot be open\n");
exit(1);//若打不开,退出
}
while((ch=fgetc(fp))!=EOF)//读文件并测试是否文件尾
fputc(ch,stdout);//输出到显示器
fclose(fp);//关闭文件
}