識別中英文

2021-08-26 01:56:26 字數 776 閱讀 8538

問:c語言的char的陣列中有中文和英文 怎麼取出來

文字是從文字檔案讀取出來的,放進去,怎麼取出來不出現亂碼?中文是兩個位元組,英文是乙個位元組,如果取到英文再去取中文,中文就會亂碼。怎麼解決這個問題?

問題補充:

一次全部列印沒問題,但是我現在的問題是需要把它截斷顯示,功能是電子書的分頁,所以分頁的時候如果把中文當成英文取的話後面就全亂了,請問各位到底應該怎麼解決,全部門沒乙個人會

林子木的回答:

// test_read_chinese.cpp : 定義控制台應用程式的入口點。

//#include "stdafx.h"

#include

#include

#include

int _tmain(int argc, _tchar* argv)

ch=fgetc(fp);

while(ch!=eof)

fclose(fp);

while(1);

return 0;

}告訴你我除錯的結果:

英文本元:其實無所謂什麼讀取字元之類的,其實就是8bit的資料罷了,英文本元或者符號,其實仔細看的話,ascii碼表加續表最多到了7f,注意了是7f哦。這樣你在文字裡面打任何字元或者符號,挺正常的不多說。

中文字元:一旦遇到了中文字元,是16bit,分兩次讀取,你會發現這個時候8bit的最高位為1了,這裡就是關鍵,就是說為了防止中英文編碼的錯亂,為了防止誤讀,中英文編碼不在同乙個碼段。

綜上所訴,就是說只要碰到讀取的值大於7f 那麼就是兩個位元組的中文字元!

python 中英文 分離 中英文分離

由於沒有安裝 numpy 根據部落格提示,成功安裝了numpy 執行之後沒有錯誤,可是嘛,我看不到結果。也就隨它去了。主要有兩個問題,乙個是執行的時候出現的 valueerror need more than 0 values to unpack 對於空行就會報錯。不機智。於是加了個判斷。讓它一直走...

實現介面中英文

乙個支援多種語言的程式 一般都是由主程式和多個語言包 資源檔案 組成。執行時,根據不同的語言設定 來讀相應的資源檔案。結合自己開發 resourceworkshop net 資源檔案生成器 的體會,覺得應該注意下面幾個問題 1 字型 字型大小的選擇。一種方法,窗體 控制項的字型全部採用預設的字型,即...

dedecms中英文分頁

不得不感嘆dedecms的強大,可定製性和擴充套件性太強了,就算不懂php也可以很輕鬆的修改原始碼。今天碰到個新題目,用dedecms搞了個中英雙語的 其他的都修改好了,上線之前發現分頁條中英文版中都是中文的,於是自己動手diy了一下。1 開啟include arc.listview.class.p...