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

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

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

    笨笨的思想片斷

    零碎片斷,雜七雜八。
    posts - 25, comments - 79, trackbacks - 0, articles - 0

    JDK 1.5 對超大字符集的支持

    Posted on 2005-12-09 11:27 笨笨 閱讀(3596) 評論(2)  編輯  收藏 所屬分類: Java

    JDK 1.5 對超大字符集的支持

    Unicode 與超大字符集
    國標 GB18030 規定了4字節擴展部分,這部分區域目前在 Unicode 規范中作為CJK Ext B區存在,即常說的中文超大字符集。這部分區域編碼為 \U20000 - \U2A6D6。

     

    UTF-16與Java String/Character 對象
    一個完整的 Unicode 字符叫 代碼點/CodePoint,而一個 Java char 叫 代碼單元 code unit。
    String 對象以UTF-16保存 Unicode 字符,需要用2個字符表示一個 超大字符集的漢字,這這種表示方式稱之為 Surrogate,第一個字符叫 Surrogate High,第二個就是 Surrogate Low。

    判斷一個char是否是 Surrogate 區的字符,用 Character的 isHighSurrogate()/isLowSurrogate()方法。
    從兩個Surrogate High/Low 字符,返回一個完整的 Unicode CodePoint 用 Character.toCodePoint()/codePointAt()方法。

    一個 Code Point ,可能需要一個也可能需要兩個char表示,因此不能直接使用 CharSequence.length()方法直接返回一個字符串到底有多少個漢字,而需要用String.codePointCount()/Character.codePointCount()。

    要定位字符串中的第N個字符,不能直接將 N 作為偏移量,而需要從字符串頭部依次遍歷得到,需要用String/Character.offsetByCodePoints() 方法。

    從字符串的當前字符,找到上一個字符,也不能直接用offset -- 實現,而需要用 String.codePointBefore()/Character.codePointBefore(),或用 String/Character.offsetByCodePoints()

    從當前字符,找下一個字符,不能直接用 offset ++ 實現,需要判斷當前 CodePoint 的長度后,再計算得到,或用 String/Character.offsetByCodePoints() 。


    Swing 對 超大字符集的支持
    JTextPane增加了對 超大字符集的支持,只要設置字體正確,就可以顯示和編輯超大字符集。

    Feedback

    # re: JDK 1.5 對超大字符集的支持  回復  更多評論   

    2007-03-19 00:22 by 扇影丹青
    請問怎么才能讓我的eclipse的editor和console顯示unicode增補字符?
    好像就只能顯示到0xffff
    之后的都是問號
    謝謝!

    # re: JDK 1.5 對超大字符集的支持  回復  更多評論   

    2007-03-19 13:41 by 笨笨
    似乎要在 Eclipse 設置中將相關的顯示字體設置為“宋體-超大字符集”,可以試一試。
    主站蜘蛛池模板: 国产精品亚洲一区二区三区| 亚洲视频网站在线观看| 三根一起会坏掉的好痛免费三级全黄的视频在线观看 | 美女尿口扒开图片免费| 亚洲av日韩av不卡在线观看| 成人毛片手机版免费看| 国产麻豆一精品一AV一免费| 亚洲精品自偷自拍无码| 亚洲国产精品成人综合久久久 | 久久成人免费电影| av午夜福利一片免费看久久| 亚洲日韩国产精品乱-久| 亚洲av无码成h人动漫无遮挡| 免费国产不卡午夜福在线 | 涩涩色中文综合亚洲| 亚洲国产综合精品| 亚洲视频在线观看不卡| 亚洲国产无套无码av电影| 亚洲色大成网站www永久一区| 成人免费毛片观看| 国产成人精品免费视频软件| 日韩不卡免费视频| 成年性生交大片免费看| 女性无套免费网站在线看| 又粗又大又黑又长的免费视频| jjizz全部免费看片| 一二三四在线播放免费观看中文版视频 | 精品久久免费视频| 国产大片51精品免费观看| 亚洲欧洲免费视频| 最好2018中文免费视频| 国产亚洲精品va在线| 浮力影院亚洲国产第一页| 亚洲国产精品VA在线看黑人 | 老司机免费午夜精品视频| 一个人免费观看www视频| 无码专区AAAAAA免费视频| 中文字幕av无码无卡免费| 凹凸精品视频分类国产品免费| 国产偷国产偷亚洲清高动态图| 亚洲手机中文字幕|