注銷

          注銷

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            112 隨筆 :: 7 文章 :: 18 評論 :: 0 Trackbacks

          漢字編碼轉換

          相關:

          UNICODE 是為了處理包括中文,日文等字符而提出的一種通用的字符集。最初的UNICODE為雙字節字符集,即16位編碼,能夠包括65536個字符。但這樣的容量并不能滿足所有需要,因此,現在的UNICODE已經擴展到4個字節,能夠容納1,112,064 個字符,而這些在16位之后的擴展背稱為增補字符。

          ?

          UTF-32 UTF-16 UTF-8 Unicode 標準的編碼字符集的字符編碼方案。

          UTF-8 使用一至四個字節的序列對編碼 Unicode 代碼點進行編碼

          UTF-8 使用一至四個字節的序列對編碼 Unicode 代碼點進行編碼。U+0000 U+007F 使用一個字節編碼,U+0080 U+07FF 使用兩個字節,U+0800 U+FFFF 使用三個字節,而 U+10000 U+10FFFF 使用四個字節。UTF-8 設計原理為:字節值 0x00 0x7F 始終表示代碼點 U+0000 U+007FBasic Latin 字符子集,它對應 ASCII 字符集)。這些字節值永遠不會表示其他代碼點,這一特性使 UTF-8 可以很方便地在軟件中將特殊的含義賦予某些 ASCII 字符。

          ?

            GB2312(1980 ) 一共收錄了 7445 個字符,包括 6763 個漢字和 682 個其它符號。漢字區的內碼范圍高字節從 B0-F7 ,低字節從 A1-FE ,占用的碼位是 72*94=6768 。其中有 5 個空位是 D7FA-D7FE 。當然也可以表示數字和字符(一個字節,與 ASCII 表示相同)。

          ?

          ?

          要讀取一個以 GB2312 編碼的包含漢字、數字、字母的二進制文件。

          String strName =Encoding.GetEncoding("gb2312").GetString(name,0,i) ;

          // name 是讀取的二進制數組。

          這樣就能將二進制數組轉換為 漢字、數字或字母

          ?

          同樣:也可以將包含漢字、數字、字母的字符串轉換為 二進制數組保存到 二進制文件。

          String unicodeString =?? " 備用43E";

          Byte[] encodedBytes = Encoding.GetEncoding("gb2312").GetBytes(unicodeString);

          ?

          當然也可以進行二進制數組與UNICODEUTF-8等編碼方式的轉換

          Byte[] encodedBytes = utf8.GetBytes(unicodeString);

          String decodedString = utf8.GetString(encodedBytes);

          ?

          UnicodeEncoding unicode = new UnicodeEncoding();

          Byte[] encodedBytes = unicode.GetBytes(unicodeString);

          String decodedString = unicode.GetString(encodedBytes);

          posted on 2006-10-24 09:13 注銷..... 閱讀(893) 評論(0)  編輯  收藏 所屬分類: 閱讀摘要
          主站蜘蛛池模板: 美姑县| 红原县| 龙南县| 正阳县| 新余市| 平潭县| 泗洪县| 青岛市| 西峡县| 乌审旗| 屯留县| 新龙县| 邹平县| 二手房| 华池县| 昌邑市| 沙湾县| 慈溪市| 澄江县| 汾阳市| 璧山县| 河津市| 德阳市| 台东县| 南康市| 武穴市| 腾冲县| 聂荣县| 额济纳旗| 扬中市| 云霄县| 射洪县| 渝中区| 化隆| 湟源县| 信宜市| 甘孜县| 岱山县| 二连浩特市| 紫金县| 河北省|