天天看點

java 漢字轉化為拼音工具類

import java.nio.ByteBuffer;
import java.util.TreeMap;
 
/**
 *
 * 漢字轉化為全拼
 *
 * JDK版本: 6
 *
 * 需要注意的是:這裡面利用gb2312的編碼規則,根據拼音區間來擷取拼音,主要可以練習TreeMap的使用。
 * 但其實拼音規則涵蓋的中文并不全面,要求較高的地方不建議使用這個類。 附上拼音和漢字對照表pinyin1.txt,可以利用這個檔案建立Map。
 */
 
public class CharactorTool {
 
    private static TreeMap<Integer, String> spellTree = new TreeMap<Integer, String>();
 
    static {
        initTreeMap();
    }
 
    private CharactorTool() {
    }
 
    private static void initTreeMap() {
        spellTree.put(-20319, "a");
        spellTree.put(-20317, "ai");
        spellTree.put(-20304, "an");
        spellTree.put(-20295, "ang");
        spellTree.put(-20292, "ao");
        spellTree.put(-20283, "ba");
        spellTree.put(-20265, "bai");
        spellTree.put(-20257, "ban");
        spellTree.put(-20242, "bang");
        spellTree.put(-20230, "bao");
        spellTree.put(-20051, "bei");
        spellTree.put(-20036, "ben");
        spellTree.put(-20032, "beng");
        spellTree.put(-20026, "bi");
        spellTree.put(-20002, "bian");
        spellTree.put(-19990, "biao");
        spellTree.put(-19986, "bie");
        spellTree.put(-19982, "bin");
        spellTree.put(-19976, "bing");
        spellTree.put(-19805, "bo");
        spellTree.put(-19784, "bu");
        spellTree.put(-19775, "ca");
        spellTree.put(-19774, "cai");
        spellTree.put(-19763, "can");
        spellTree.put(-19756, "cang");
        spellTree.put(-19751, "cao");
        spellTree.put(-19746, "ce");
        spellTree.put(-19741, "ceng");
        spellTree.put(-19739, "cha");
        spellTree.put(-19728, "chai");
        spellTree.put(-19725, "chan");
        spellTree.put(-19715, "chang");
        spellTree.put(-19540, "chao");
        spellTree.put(-19531, "che");
        spellTree.put(-19525, "chen");
        spellTree.put(-19515, "cheng");
        spellTree.put(-19500, "chi");
        spellTree.put(-19484, "chong");
        spellTree.put(-19479, "chou");
        spellTree.put(-19467, "chu");
        spellTree.put(-19289, "chuai");
        spellTree.put(-19288, "chuan");
        spellTree.put(-19281, "chuang");
        spellTree.put(-19275, "chui");
        spellTree.put(-19270, "chun");
        spellTree.put(-19263, "chuo");
        spellTree.put(-19261, "ci");
        spellTree.put(-19249, "cong");
        spellTree.put(-19243, "cou");
        spellTree.put(-19242, "cu");
        spellTree.put(-19238, "cuan");
        spellTree.put(-19235, "cui");
        spellTree.put(-19227, "cun");
        spellTree.put(-19224, "cuo");
        spellTree.put(-19218, "da");
        spellTree.put(-19212, "dai");
        spellTree.put(-19038, "dan");
        spellTree.put(-19023, "dang");
        spellTree.put(-19018, "dao");
        spellTree.put(-19006, "de");
        spellTree.put(-19003, "deng");
        spellTree.put(-18996, "di");
        spellTree.put(-18977, "dian");
        spellTree.put(-18961, "diao");
        spellTree.put(-18952, "die");
        spellTree.put(-18783, "ding");
        spellTree.put(-18774, "diu");
        spellTree.put(-18773, "dong");
        spellTree.put(-18763, "dou");
        spellTree.put(-18756, "du");
        spellTree.put(-18741, "duan");
        spellTree.put(-18735, "dui");
        spellTree.put(-18731, "dun");
        spellTree.put(-18722, "duo");
        spellTree.put(-18710, "e");
        spellTree.put(-18697, "en");
        spellTree.put(-18696, "er");
        spellTree.put(-18526, "fa");
        spellTree.put(-18518, "fan");
        spellTree.put(-18501, "fang");
        spellTree.put(-18490, "fei");
        spellTree.put(-18478, "fen");
        spellTree.put(-18463, "feng");
        spellTree.put(-18448, "fo");
        spellTree.put(-18447, "fou");
        spellTree.put(-18446, "fu");
        spellTree.put(-18239, "ga");
        spellTree.put(-18237, "gai");
        spellTree.put(-18231, "gan");
        spellTree.put(-18220, "gang");
        spellTree.put(-18211, "gao");
        spellTree.put(-18201, "ge");
        spellTree.put(-18184, "gei");
        spellTree.put(-18183, "gen");
        spellTree.put(-18181, "geng");
        spellTree.put(-18012, "gong");
        spellTree.put(-17997, "gou");
        spellTree.put(-17988, "gu");
        spellTree.put(-17970, "gua");
        spellTree.put(-17964, "guai");
        spellTree.put(-17961, "guan");
        spellTree.put(-17950, "guang");
        spellTree.put(-17947, "gui");
        spellTree.put(-17931, "gun");
        spellTree.put(-17928, "guo");
        spellTree.put(-17922, "ha");
        spellTree.put(-17759, "hai");
        spellTree.put(-17752, "han");
        spellTree.put(-17733, "hang");
        spellTree.put(-17730, "hao");
        spellTree.put(-17721, "he");
        spellTree.put(-17703, "hei");
        spellTree.put(-17701, "hen");
        spellTree.put(-17697, "heng");
        spellTree.put(-17692, "hong");
        spellTree.put(-17683, "hou");
        spellTree.put(-17676, "hu");
        spellTree.put(-17496, "hua");
        spellTree.put(-17487, "huai");
        spellTree.put(-17482, "huan");
        spellTree.put(-17468, "huang");
        spellTree.put(-17454, "hui");
        spellTree.put(-17433, "hun");
        spellTree.put(-17427, "huo");
        spellTree.put(-17417, "ji");
        spellTree.put(-17202, "jia");
        spellTree.put(-17185, "jian");
        spellTree.put(-16983, "jiang");
        spellTree.put(-16970, "jiao");
        spellTree.put(-16942, "jie");
        spellTree.put(-16915, "jin");
        spellTree.put(-16733, "jing");
        spellTree.put(-16708, "jiong");
        spellTree.put(-16706, "jiu");
        spellTree.put(-16689, "ju");
        spellTree.put(-16664, "juan");
        spellTree.put(-16657, "jue");
        spellTree.put(-16647, "jun");
        spellTree.put(-16474, "ka");
        spellTree.put(-16470, "kai");
        spellTree.put(-16465, "kan");
        spellTree.put(-16459, "kang");
        spellTree.put(-16452, "kao");
        spellTree.put(-16448, "ke");
        spellTree.put(-16433, "ken");
        spellTree.put(-16429, "keng");
        spellTree.put(-16427, "kong");
        spellTree.put(-16423, "kou");
        spellTree.put(-16419, "ku");
        spellTree.put(-16412, "kua");
        spellTree.put(-16407, "kuai");
        spellTree.put(-16403, "kuan");
        spellTree.put(-16401, "kuang");
        spellTree.put(-16393, "kui");
        spellTree.put(-16220, "kun");
        spellTree.put(-16216, "kuo");
        spellTree.put(-16212, "la");
        spellTree.put(-16205, "lai");
        spellTree.put(-16202, "lan");
        spellTree.put(-16187, "lang");
        spellTree.put(-16180, "lao");
        spellTree.put(-16171, "le");
        spellTree.put(-16169, "lei");
        spellTree.put(-16158, "leng");
        spellTree.put(-16155, "li");
        spellTree.put(-15959, "lia");
        spellTree.put(-15958, "lian");
        spellTree.put(-15944, "liang");
        spellTree.put(-15933, "liao");
        spellTree.put(-15920, "lie");
        spellTree.put(-15915, "lin");
        spellTree.put(-15903, "ling");
        spellTree.put(-15889, "liu");
        spellTree.put(-15878, "long");
        spellTree.put(-15707, "lou");
        spellTree.put(-15701, "lu");
        spellTree.put(-15681, "lv");
        spellTree.put(-15667, "luan");
        spellTree.put(-15661, "lue");
        spellTree.put(-15659, "lun");
        spellTree.put(-15652, "luo");
        spellTree.put(-15640, "ma");
        spellTree.put(-15631, "mai");
        spellTree.put(-15625, "man");
        spellTree.put(-15454, "mang");
        spellTree.put(-15448, "mao");
        spellTree.put(-15436, "me");
        spellTree.put(-15435, "mei");
        spellTree.put(-15419, "men");
        spellTree.put(-15416, "meng");
        spellTree.put(-15408, "mi");
        spellTree.put(-15394, "mian");
        spellTree.put(-15385, "miao");
        spellTree.put(-15377, "mie");
        spellTree.put(-15375, "min");
        spellTree.put(-15369, "ming");
        spellTree.put(-15363, "miu");
        spellTree.put(-15362, "mo");
        spellTree.put(-15183, "mou");
        spellTree.put(-15180, "mu");
        spellTree.put(-15165, "na");
        spellTree.put(-15158, "nai");
        spellTree.put(-15153, "nan");
        spellTree.put(-15150, "nang");
        spellTree.put(-15149, "nao");
        spellTree.put(-15144, "ne");
        spellTree.put(-15143, "nei");
        spellTree.put(-15141, "nen");
        spellTree.put(-15140, "neng");
        spellTree.put(-15139, "ni");
           
java 漢字轉化為拼音工具類
java 漢字轉化為拼音工具類
java 漢字轉化為拼音工具類
java 漢字轉化為拼音工具類
java 漢字轉化為拼音工具類
java 漢字轉化為拼音工具類
java 漢字轉化為拼音工具類

繼續閱讀