C語言中如何讀取檔案中的漢字並將其存入陣列中

時間 2021-05-05 16:27:38

1樓:匿名使用者

為了方便文字檔案的操作,標準函式程式設計庫提供了,行讀寫函式,

char *gets(char *s);

char *fgets(char *s, int n, file *stream);

-----------------------精通unix下c語言程式設計與專案實踐p66

行輸出函式族

int puts(const char *s);

int fputs(const char *s, file *stream);

-----------------------精通unix下c語言程式設計與專案實踐p67

塊讀寫函式

能夠輸入輸出任意數量的字元,在操作二進位制檔案時常常使用,

fread 和fwrite

塊讀寫函式經常操作二進位制檔案。

-----------------------精通unix下c語言程式設計與專案實踐p70

再有就是編碼的知識了

當你輸出的ascii碼在漢字的範圍內的時候,漢字系統會認識到

然後把相應的ascii碼變成漢字。

2樓:

建立一個足夠大的字元型陣列;

以文字方式讀開啟原檔案;

按字元方式讀取檔案,每讀一個字元判斷一下是否為漢字編碼(<0),若是則存入字元陣列,不是則跳過讀取下一個字元,直到檔案結束。

設原檔案在當前目錄下,名為123.txt,舉例**如下:

//#include "stdafx.h"//if the vc++6.0, with this line.

#include "stdio.h"

#include "stdlib.h"

int main(void)

while((ch=fgetc(fp))!=eof)if(ch<0)

s[i++]=ch;

fclose(fp);

s[i]='\0';

printf("%s\n",s);//打出來看看return 0;

}注:原檔案內容是「fjkslauti我rophk134是2315學jkal 習c語言jks新da;jus手jfkdsla」

輸出是「我是學習語言新手」

3樓:匿名使用者

漢字處理跟字串處理是一樣的。一個漢字就是兩個字元。

c語言中如何讀取以逗號分割的檔案中的資料

在c語言中,可以使用格式化輸入函式fscnaf來解決上述問題,例如有文字檔案的資料儲存方式為 12,13 34,56 則在fscnaf中可以按如下方法輸入 fscanf fp,d,d n a,b 風若遠去何人留 對於這個問題,有兩種解決方案。一,直接用scanf進行格式化輸入。滿足以下兩種條件可以用...

c語言中如何引用其它c原始檔中的函式

果果和糰子 在原始檔a1.c中呼叫a2.c 中的函式有兩種方法 1 在a2.c中有完整的函式定義,在a1.c中新增一下要用到的函式原型 宣告 就可以了,例如 在a2.c中 有函式void a2 在a1.c中 在檔案前頭增加一行 void a2 就可以了。2 把a2.c中完整定義的函式的原型,寫到一個...

如何用C語言迴圈讀取檔案內容,怎麼用C語言讀取 TXT檔案中的字串

迴圈讀取一個檔案的內容。這樣做沒有任何意義,不如把讀取的內容保持在變數當中,節省空間時間。如果非要反覆讀取的話可以使用rewind函式把檔案指標重置。函式名 rewind 功 能 將檔案內部的位置指標重新指向一個流 資料流 檔案 的開頭注意 不是檔案指標而是檔案內部的位置指標,隨著對檔案的讀寫檔案的...