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

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

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

    Shift_JIS, MS932 and Unicode(收藏自網絡)

    Posted on 2009-02-03 16:52 bluoy 閱讀(1393) 評論(0)  編輯  收藏
    終于搞明白了困惑很久的問題,罪魁禍首還是jdk啊。天殺的。
    以下內容轉自網絡:

    測試環境:Win2K Pro日文版,SUN J2SDK 1.5.0-beta2

    經過測試,發現Shift_JIS和MS932編碼的全角波浪線(“~”)的編碼都是 0x8160(16進制,兩個字節,高位在前)。通過sun.io.ByteToCharMS932轉換后得到Unicode字符'\uFF5E',而通過sun.io.ByteToCharSJIS轉換后則得到Unicode字符'\u301C'。

    反之,Unicode字符'\uFF5E'通過sun.io.CharToByteMS932轉換后會得到MS932編碼的本地字符0x8160(16進制,兩個字節,高位在前),而Unicode字符'\u301C'通過 sun.io.CharToByteSJIS轉換后也會得到Shift_JIS編碼的本地字符0x8160(16進制,兩個字節,高位在前),兩者的轉換結果相同。

    結論:在WinNT/2K/XP上,MS932和Shift_JIS這兩種本地字符集完全相同,只是分別采用JDK的sun.io.ByteToCharMS932和sun.io.ByteToCharSJIS對個別特殊的本地字符進行轉換后所得到的 Unicode字符并不一樣。實際上,MS932就是WinNT/2K/XP上的Shift_JIS,只是與標準版的Shift_JIS字符集相比,MS932收錄了更多的字符,比如NEC和IBM對Shift_JIS的擴展(如日文中的“?????①..?...”等等);然而,JDK中的 ByteToCharSJIS及CharToByteSJIS卻使用了標準的Shift_JIS字符集,所以部分擴展字符在從byte轉換成char或是從char轉換成byte時會出現亂碼,這的確是JDK讓人非常迷惑的一處。

    參考資料1(日文):http://www.asahi-net.or.jp/~ez3k-msym/charsets/jis2ucs.htm


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


    網站導航:
     
    主站蜘蛛池模板: 国产一区二区三区免费在线观看| 两个人日本WWW免费版| 黄页网站在线看免费| 亚洲免费二区三区| 国产免费毛不卡片| 亚洲最大的成人网站| 日韩视频免费一区二区三区| 另类图片亚洲校园小说区| 亚洲AV中文无码乱人伦| 成人a毛片免费视频观看| 亚洲精品制服丝袜四区| 无码午夜成人1000部免费视频| 亚洲成无码人在线观看| 成年人在线免费观看| 免费观看四虎精品成人| 国产亚洲美女精品久久久久狼 | 特a级免费高清黄色片| 日韩一卡2卡3卡4卡新区亚洲| 精品视频一区二区三区免费| 久久国产亚洲精品无码| 成年轻人网站色免费看| 特级毛片免费观看视频| 亚洲人JIZZ日本人| 青青青国产在线观看免费网站| 99亚洲精品卡2卡三卡4卡2卡| 国产成人A亚洲精V品无码| 2019中文字幕在线电影免费| 亚洲色精品VR一区区三区| 亚洲精品国精品久久99热| 91av免费观看| 国产精品亚洲小说专区| 亚洲国产精品久久久久婷婷软件| 国产精品久久久久久久久久免费| a高清免费毛片久久| 亚洲国产综合第一精品小说| av无码东京热亚洲男人的天堂| 免费观看久久精彩视频| 亚洲精品国产第一综合99久久| 亚洲va久久久噜噜噜久久天堂 | 免费人成在线视频| 一级女人18片毛片免费视频|