當前位置:首頁 » 編程語言 » c語言讀取中文

c語言讀取中文

發布時間: 2022-05-08 14:50:14

❶ 在c語言中,怎樣讀取文本文檔的一個中文的字元串

就當一般的字元串一個字一個字地讀,讀到逗號為止。跟自己實現fgets()函數差不多。

enum { SIZE = 1024 };
char str[SIZE]; /* 聲明一個字元數組 */
/* 下面讀到逗號或數組最大值時停止 */
for (i = 0; i < SIZE - 1 && (c = getchar() ) != ','; ++i)
str[i] = c;
str[i] = '\0';

❷ 怎麼用c語言讀取txt中的中文信息

用fscanf(%s)或者fgets都可以讀,中文就是一個普通的字元串。

❸ c語言如何按行讀取txt中的中文字元

//若使用一維數組使用以下程序
#include <stdio.h>
main()
{
char s1[20] = {0};
char s2[20] = {0};
char s3[20] = {0};
int i=0;
FILE *fp;
fp = fopen("1.txt","r");
fscanf(fp,"%s",s1);
fscanf(fp,"%s",s2);
fscanf(fp,"%s",s3);
printf("%s\n%s\n%s\n",s1,s2,s3);

}

//若用二維數組使用如下程序
#include <stdio.h>
main()
{
char s[10][20] = {0};
int i=0;
FILE *fp;
fp = fopen("1.txt","r");
for(i=0;i<3;i++)
{
fscanf(fp,"%s",s[i]);
printf("%s\n",s[i]);
}
}

❹ c語言 如何讀取中文字元串

可以使用輸入輸出重定向來將TXT文本中的字元內容導入程序中,或者使用標准C庫函數:fopen()和fgetc();
先使用fopen()函數打開TXT文本文件,然後使用fgetc讀取文本文件中的字元。讀取全部文本中全部字元可以使用一個while循環加判斷是否讀取到文件結尾來實現:
char ch;
while((ch= fgetc(fp)) != EOF)

這樣當讀取到文件結尾時,while循環就會終止。
C語文編寫編譯如下:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAXLINE 100000
#define BUFLEN 1024
int main()
{
FILE *file;
char buf[BUFLEN];
int len=0,i=0;
char *array[MAXLINE];

file=fopen("test.txt","r");//打開TXST.TxT文件
if(!file)return -1;
while(fgets(buf,BUFLEN,file))//讀取TXT中字元
{
len=strlen(buf);
array[i]=(char*)malloc(len+1);
if(!array[i])break;
strcpy(array[i++],buf);
}

fclose(file);
i--;
while(i>=0&&array[i])
{
printf("%s\n",array[i]);//列印test文檔的字元
free(array[i--]);
}
}

❺ C語言如何讀取TXT中的中文字元串

#include<stdio.h>
intmain(void)
{
FILE*p;
charch;
p=fopen("a.txt","r");
while(!feof(p))
{
if(fgetc(p)=='>')
{
while((ch=fgetc(p))!='<')
{
putchar(ch);
}
printf(" ");
}
}
fclose(p);
return0;
}
//昨天我說了沒編譯估計會出錯,這次沒事了運行通過
//還有隻能讀英文,喬丹不行,這是因為c編譯器不支持unicode編碼,char類型的是只能表示128個字元,Unicode是兩個位元組,可以表示漢字。

❻ c語言怎麼讀入中文,存儲完了又怎麼輸出該中文

1.首先文件的類型是file全是大寫的不是file可以解決你上面出現的問題
2.fscanf("%d",&n);
寫成
scanf("%d",&n);
3.程序的路邏輯我沒看,我給你編譯通過了,如果還有問題再問吧

❼ c語言 怎麼讀文件中的漢字

字元讀寫函數fgetc和fputc
字元讀寫函數是以字元(位元組)為單位的讀寫函數。 每次可從文件讀出或向文件寫入一個字元。

1) 讀字元函數fgetc
fgetc函數的功能是從指定的文件中讀一個字元,函數調用的形式為:
字元變數=fgetc(文件指針);
例如:
ch=fgetc(fp);
其意義是從打開的文件fp中讀取一個字元並送入ch中。

對於fgetc函數的使用有以下幾點說明:
在fgetc函數調用中,讀取的文件必須是以讀或讀寫方式打開的。
讀取字元的結果也可以不向字元變數賦值。例如:fgetc(fp); 但是讀出的字元不能保存。
在文件內部有一個位置指針。用來指向文件的當前讀寫位元組。在文件打開時,該指針總是指向文件的第一個位元組。使用fgetc 函數後,該位置指針將向後移動一個位元組。 因此可連續多次使用fgetc函數,讀取多個字元。應注意文件指針和文件內部的位置指針不是一回事。文件指針是指向整個文件的,須在程序中定義說明,只要不重新賦值,文件指針的值是不變的。文件內部的位置指針用以指示文件內部的當前讀寫位置,每讀寫一次,該指針均向後移動,它不需在程序中定義說明,而是由系統自動設置的。

【例13-1】讀入文件c1.doc,在屏幕上輸出。#include<stdio.h>main(){ FILE *fp; char ch; if((fp=fopen("d:\\jrzh\\example\\c1.txt","rt"))==NULL){ printf("\nCannot open file strike any key exit!"); getch(); exit(1); } ch=fgetc(fp); while(ch!=EOF){ putchar(ch); ch=fgetc(fp); } fclose(fp);}
本常式序的功能是從文件中逐個讀取字元,在屏幕上顯示。程序定義了文件指針fp,以讀文本文件方式打開文件「d:\\jrzh\\example\\ex1_1.c」,並使fp指向該文件。如打開文件出錯,給出提示並退出程序。程序第10行先讀出一個字元,然後進入循環,只要讀出的字元不是文件結束標志(每個文件末有一結束標志EOF)就把該字元顯示在屏幕上,再讀入下一字元。每讀一次,文件內部的位置指針向後移動一個字元,文件結束時,該指針指向EOF。執行本程序將顯示整個文件。

2) 寫字元函數fputc
fputc函數的功能是把一個字元寫入指定的文件中。函數調用的形式為:
fputc( 字元量, 文件指針 );
其中,待寫入的字元量可以是字元常量或變數,例如:
fputc('a',fp);
其意義是把字元a寫入fp所指向的文件中。

對於fputc函數的使用也要說明幾點:

被寫入的文件可以用寫、讀寫、追加方式打開,用寫或讀寫方式打開一個已存在的文件時將清除原有的文件內容,寫入字元從文件首開始。如需保留原有文件內容,希望寫入的字元以文件末開始存放,必須以追加方式打開文件。被寫入的文件若不存在,則創建該文件。
每寫入一個字元,文件內部位置指針向後移動一個位元組。
fputc函數有一個返回值,如寫入成功則返回寫入的字元,否則返回一個EOF。可用此來判斷寫入是否成功。

❽ C語言 怎麼讀取中文並顯示

#include<stdio.h>
#include<stdlib.h>
#include<time.h>

intmain()
{
srand((unsigned)time(NULL));
inti,num;
chardraw[3][5]={"老虎","兔子","鴨子"};
for(i=0;i<5;i++)
{
num=rand()%3;
printf("%-3s ",draw[num]);

system("pause");
}
return0;

}

❾ C語言怎麼從字元串中取出中文字元

這個需要具體看編譯器中漢字的編碼情況,漢字編碼是2至4個位元組,我是手機編譯器,漢字編碼是3個位元組,參考代碼如下:
#include<stdio.h>
char *str = "你好123哈哈456";
int main()
{
int i;
for(i=0;str[i]!=0;++i)
if(str[i]>127){
printf("%c%c%c\n",str[i],str[i+1],str[i+2]);
i+=3-1;
}
else printf("%c\n",str[i]);
return 0;
}

熱點內容
日本編程語言 發布:2025-05-11 09:53:52 瀏覽:843
手機店設置的初始密碼一般是多少 發布:2025-05-11 09:33:15 瀏覽:401
昂科威選擇哪個配置 發布:2025-05-11 09:25:50 瀏覽:36
怎麼解決安卓視頻全屏卡頓 發布:2025-05-11 09:14:55 瀏覽:726
匯編從編譯到執行 發布:2025-05-11 09:09:04 瀏覽:258
安卓系統低版本如何升級 發布:2025-05-11 09:04:44 瀏覽:251
認證類型加密演算法 發布:2025-05-11 08:58:35 瀏覽:561
android停靠 發布:2025-05-11 08:42:23 瀏覽:646
超時代加密 發布:2025-05-11 08:41:29 瀏覽:780
為什麼還要輸入支取密碼 發布:2025-05-11 08:32:24 瀏覽:362