乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      用.NET獲取漢字的區(qū)位碼(c#)_.net技術(shù)

       ylw527 2010-12-31
      首先復(fù)習(xí)一下計(jì)算機(jī)基礎(chǔ)知識(shí):

        計(jì)算機(jī)中最底層的數(shù)據(jù)都是用二進(jìn)制及0和1來(lái)表示的。每個(gè)0或1稱作1位,第8位二進(jìn)制數(shù)叫做1個(gè)字節(jié),它可以表示ASCII碼中的一個(gè)字符。中文計(jì)算機(jī)中用兩個(gè)字節(jié)即16位二進(jìn)制來(lái)表示一個(gè)漢字。而在Unicode編碼中所有的符號(hào)(包括漢字,英文,標(biāo)題及其它眾多符號(hào))都是為兩字節(jié)(16)位來(lái)表示。

        在System.Text命名空間中包含眾多編碼的類,可供進(jìn)行操作及轉(zhuǎn)換,下面用兩個(gè)實(shí)例來(lái)進(jìn)行區(qū)位碼及漢字之間的互換,希望能起到舉一反三的效果,讓大家可以輕松處理文字編碼方面的問(wèn)題:


        using System;
        using System.Text;
        class CodingChange
        {
        public string CharacterToCoding(string character)
        {
        string coding = "";
        for (int i = 0; i<character.Length; i++ )
        {
        byte[] bytes = System.Text.Encoding.Unicode.GetBytes(character.Substring(i,1)); //取出二進(jìn)制編碼內(nèi)容
        string lowCode = System.Convert.ToString(bytes[0], 16); //取出低字節(jié)編碼內(nèi)容(兩位16進(jìn)制)
        if (lowCode.Length == 1)
        lowCode = "0" + lowCode;
        string hightCode = System.Convert.ToString(bytes[1], 16);//取出高字節(jié)編碼內(nèi)容(兩位16進(jìn)制)
        if (hightCode.Length == 1)
        hightCode = "0" + hightCode;
        coding += (lowCode + hightCode);//加入到字符串中,
        }
        return coding;
        }
        public string CodingToCharacter(string coding)
        {
        string characters = "";

       


        if (coding.Length % 4 != 0)//編碼為16進(jìn)制,必須為4的倍數(shù)。
        {
        throw new System.Exception("編碼格式不正確");
        }
        for (int i = 0; i<coding.Length; i+=4 ) //每四位為一個(gè)漢字
        {
        byte[] bytes = new byte[2];
        string lowCode = coding.Substring(i, 2); //取出低字節(jié),并以16進(jìn)制進(jìn)制轉(zhuǎn)換
        bytes[0] = System.Convert.ToByte(lowCode, 16);
        string highCode = coding.Substring(i + 2, 2); //取出高字節(jié),并以16進(jìn)制進(jìn)行轉(zhuǎn)換
        bytes[1] = System.Convert.ToByte(highCode, 16);
        string character = System.Text.Encoding.Unicode.GetString(bytes);
        characters += character;
        }
        return characters;
        }
        public static void Main()
        {
        CodingChange code = new CodingChange();
        string coding = code.CharacterToCoding("我們的大中國(guó),是好在的一個(gè)家.");
        Console.WriteLine(coding);
        Console.WriteLine(code.CodingToCharacter(coding));
        }
        };

       


        最后輸出的結(jié)果是:

        C:\>test
        1162ec4e847627592d4efd560cff2f667d5928578476004e2a4eb65b2e00
        我們的大中國(guó),是好在的一個(gè)家.

        C:\>


        本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評(píng)論

        發(fā)表

        請(qǐng)遵守用戶 評(píng)論公約

        類似文章 更多