<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 33, comments - 46, trackbacks - 0, articles - 2

    中文編碼相關

    Posted on 2012-01-14 16:16 在路上... 閱讀(320) 評論(0)  編輯  收藏

    碰到中文亂碼的時候,可以考慮使用一個熟悉的中心字符串入手進行調試跟蹤轉換過程的變化,這里記錄一下“中文”漢字的編碼變化過程

    UNICODE編碼:4e2d 6587
    通常在JAVA的內置處理機制中是這樣存儲的,不同的環境中返回的byte[]不一樣,例如windows環境,使用getBytes()返回的是getBytes(“GBK”),linux環境,通常如果設置LANG=zh_CN.UTF-8,這相當于getBytes(“utf-8”).

    GBK編碼:d6d0 cec4,byte[]={-42,-48,-50,-60}

    UTF8編碼:e4 b8 ad e6 96 87,byte[]={-28,-72,-83,-26,-106,-121}

    ISO8859-1編碼:如果試圖將byte[]={-42,-48,-50,-60}采用new String(byte[],”iso8859-1”)讀取,由于不能正確轉換,所以是2個問號byte[]={63,63}
    但是從存儲的角度看,gbk和iso8859-1有類似之處,GBK采用char(2),而iso8859-1采用byte[4],拆分為{-42,-48,-50,-60}

    Javascript:可以使用var str=”\u4E2D\u6587”;來表示

    HTML中,可以使用&#20013;&#25991,相當于吧16進制轉換為10進制,再加上轉義控制&#和;結尾。

    如果需要從utf byte[]和GBK byte[]之間互相轉換,在支持unicode的java平臺,可以使用下面的轉換規則

    byte[] utf8={-28,-72,-83,-26,-106,-121};
    String str=new String(utf8,”utf-8”);//轉換為正確的中文
    byte[] gbk=str.getBytes(“GBK”);

    或者:

    byte[] gbk={-42,-48,-50,-60};
    String str=new String(utf8,"GBK");//轉換為正確的中文
    byte[] utf8=str.getBytes("utf-8")

    注意上面的byte[]為java的,與.net不一樣,需要轉換


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 久久av免费天堂小草播放| 亚洲中文字幕无码av永久| 永久免费无码日韩视频| 国产午夜免费福利红片| 亚洲国产高清国产拍精品| 在线视频免费观看www动漫| 亚洲色大网站WWW永久网站| 成人毛片手机版免费看| 亚洲色偷偷综合亚洲av78 | 成人免费在线视频| 亚洲一区二区三区播放在线 | 国产午夜无码精品免费看 | 精品国产亚洲一区二区在线观看| 国产精品亚洲一区二区三区 | 久久香蕉国产线看观看亚洲片| 精品无码国产污污污免费网站国产| 国产精品亚洲综合一区| 三年片在线观看免费| 亚洲短视频男人的影院| 国产精品成人观看视频免费| 亚洲熟妇AV一区二区三区浪潮| 日本一道一区二区免费看| 免费手机在线看片| 亚洲乱码精品久久久久..| 69视频免费观看l| 亚洲另类无码一区二区三区| 亚洲福利中文字幕在线网址| 鲁丝片一区二区三区免费| 亚洲午夜电影一区二区三区| 人人狠狠综合久久亚洲高清| 女同免费毛片在线播放| 亚洲成人午夜电影| 免费在线看片网站| 99re6热视频精品免费观看| 亚洲午夜理论片在线观看| 国产亚洲日韩在线三区| 精品无码免费专区毛片| 国产精品亚洲片在线花蝴蝶| 亚洲一区二区三区电影| 国产免费人成在线视频| 久久黄色免费网站|