Java implementiert die Umwandlung chinesischer Charaktere in Pinyin
Konversionsklasse
public class PINYINChinese { private static int[] pyvalue = new int[] { -20319, -20317, -20304, -20295, -20292, -20283, -20265, -20257, -20242, -20230, -20051, -20036, -20032, -20026, -20002, -19990, -19986, -19982, -19976, -19805, -19784, -19775, -19774, -19763, -19756, -19751, -19746, -19741, -19739, -19728, -19725, -19715, -19540, -19531, -19525, -19515, -19500, -19484, -19479, -19467, -19289, -19288, -19281, -19275, -19270, -19263, -19261, -19249, -19243, -19242, -19238, -19235, -19227, -19224, -19218, -19212, -19038, -19023, -19018, -19006, -19003, -18996, -18977, -18961, -18952, -18783, -18774, -18773, -18763, -18756, -18741, -18735, -18731, -18722, -18710, -18697, -18696, -18526, -18518, -18501, -18490, -18478, -18463, -18448, -18447, -18446, -18239, -18237, -18231, -18220, -18211, -18201, -18184, -18183, -18181, -18012, -17997, -17988, -17970, -17964, -17961, -17950, -17947, -17931, -17928, -17922, -17759, -17752, -17733, -17730, -17721, -17703, -17701, -17697, -17692, -17683, -17676, -17496, -17487, -17482, -17468, -17454, -17433, -17427, -17417, -17202, -17185, -16983, -16970, -16942, -16915, -16733, -16708, -16706, -16689, -16664, -16657, -16647, -16474, -16470, -16465, -16459, -16452, -16448, -16433, -16429, -16427, -16423, -16419, -16412, -16407, -16403, -16401, -16393, -16220, -16216, -16212, -16205, -16202, -16187, -16180, -16171, -16169, -16158, -16155, -15959, -15958, -15944, -15933, -15920, -15915, -15903, -15889, -15878, -15707, -15701, -15681, -15667, -15661, -15659, -15652, -15640, -15631, -15625, -15454, -15448, -15436, -15435, -15419, -15416, -15408, -15394, -15385, -15377, -15375, -15369, -15363, -15362, -15183, -15180, -15165, -15158, -15153, -15150, -15149, -15144, -15143, -15141, -15140, -15139, -15128, -15121, -15119, -15117, -15110, -15109, -14941, -14937, -14933, -14930, -14929, -14928, -14926, -14922, -14921, -14914, -14908, -14902, -14894, -14889, -14882, -14873, -14871, -14857, -14678, -14674, -14670, -14668. -14353, -14345, -14170, -14159, -14151, -14149, -14145, -14140, -14137. -14094, -14092, -14090, -14087, -14083, -13917, -13914, -13910, -13907, -13906. -13831, -13658, -13611, -13601, -13406, -13404, -13400. -13329, -13326, -13318, -13147, -13138, -13120, -13107, -13096, -13095, -13091, -13076, -13068, -13063, -13060, -12888, -12875, -12871, -12860, -12858. -12120, -12099, -12089, -12074, -12067, -12058, -12039, -11867, -11861, -11847, -11831, -11798, -11781, -11604, -11589. -11324, -11303, -11097, -11077, -11067, -11055, -11052, -11045, -11041, -11038, -11024, -11020, -11019, -11018, -11014, -10838, -10832, -10815, -10800, -10790, -10780, -10764, -10587, -10544, -10533, -10519, -10331, -10329, -10328, -10322, -10315, -10309, -10307, -10296, -10281, -10274, -10270, -10262, -10260, -10256, -10254}; public static String[] pystr = new String[] { "a", "ai", "an", "ang", "ao", "ba", "bai", "ban", "bang", "bao", "bei", "ben", "beng", "bian", "biao", "bie", "bin", "bing", "bo", "bu", "ca", "ca", "cai", "can", "cang", "cao", "cao", "ce", "ceng", "cha", "chai", "chan", "chang", "chao", "che", "chen", "cheng", "cheng", "chi", "chou", "chou", "chou", "chou", "chu", "chuang", "chuo", "da", "dai", "dan", "dang", "dao", "de", "deng", "di", "dian", "die", "ding", "diu", "dong", "dou", "dou", "du", "duan", "duan", "duo", "duo", "dun", "duo", "e", "en", "er", "fa", "fan", "fang", "fei", "fen", "feng", "fou", "fou", "fu", "gai", "gai", "gan", "gang", "gang", "gao", "gao", "gao", "ge", "gei", "gei", "gen", "gen", "gong", "gou", "gu", "Gua", "Guai", "Guan", "Guang", "Gui", "Gun", "Guo", "Ha", "Hai", "Han", "Hang", "Hao", "er", "Hei", "Hen", "Hen", "Hua", "Hu", "", "", "", "", "", " "hua", "hua", "hua", "huang", "huo", "huo", "ji", "ji", "jia", "jian", "jiang", "jia", "jia", "jia", "jia", "jia", "jia", "jia", "jia", "jia", "jia", "jia", "Jia", "Jia", "Jia", "Jia", "Jia", "Jia", "Jia", "Jia", "Jiu", "Ju", "Juan", "Jue", "Jue", "Jun", "Ka", "Kai," Kan "," Kang "," Ka, ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", " "Kong", "Kou", "ku", "kua", "kuai", "kuan", "kuang", "kuang", "kuo", "kuo", "la", "Lai,", "Lan", "Lang", "La", "Lian", "", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", "lia", "liao", "liao", "lie", "lin", "ling", "liu", "long", "lou", "lu", "lu", "lv", "luan", "lue", "lun", "luo", "ma", "mai", "man", "meng", "mao", "me", "mei", "men", "meng", "mian", "miao", "miao", "mie", "min", "ming", "miu", "mo", "mou", "mu", "na", "nai", "nai", "nan", "nang", "nao", "nao", "ne", "nei", "nen", "neng", "nian", "Niang", "nie", "nin", "ning", "niu", "nong", "nu", "nv", "nuan", "nue", "nuo", "o", "ou," pa "," pai "," Pan "," Pang "," Pi "," Pi ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", ",", "," ,ed "Pa,", ",ömer "piao", "piao", "pie", "pin", "ping", "po", "pu", "qi", "qia", "qian", "qiang", "qiao", "qie", "qie", "qiong", "qing", "qiong", "qiong", "qiu", "qu", "quan", "qun", "ran", "rang", "rao", "re", "ren", "ren", "reng", "ri", "rong", "rou", "ru", "ruan", "rui", "run", "ruo", "sa", "sai", "san", "sang", "sai", "shang", "shuai", "shuai", "shun", "shuo", "Si", "Song", "Sou", "Su", "Suan", "Suan", "Sun", "Suo", "Ta", "Tai", "Tan", "Tang", "Tao", "Te", "Teng", "Ti", "Tian", ",", ",", ",", " "tu", "tuo", "tuo", "tuo", "tuo", "wa", "wai", "wan", "wang", "wei", "wen", "wen", "wen", "wen", "wen", "wen", "wo", "wu", "xi", "xia", "xian", "xiang", "xiao", "xie", "xin", "xing", "xiong", "xiu", "xu", "xuan", "xue", "xue", "xun", "ya", "yan", "yang", "yao", "ye", "yi", "yin", "ying", "ying", "yo", "yong", "you", "yu", "yuan", "yue", "yun", "za", "zai", "zan", "zang", "zao", "ze", "zei", "zei", "zen", "zha", "zhai", "zhan", "zhang", "zhao", "zhe", "zhen", "zheng", "zhi", "zhong", "zhou", "zhu", "zhua", "zhuai", "zhuan", "zhuan", "zhuan", "zhuo", "zhuo", "zhuo", "zhuo", "zi", "zou", "zu", "zuan", "zuo" }; privater StringBuilder -Puffer; private String -Ressource; private static charakterParser charakterParser = neuer CharakterParser (); public static CharakterParser getInstance () {return CharakterParser; } public String getResource () {Return Resource; } public void setResource (String Resource) {this.resource = ressource; } / ** * chinesische Zeichen werden in ASCII umgewandelt * * * / private int getChsascii (String chs) {int asc = 0; try {byte [] bytes = chs.getBytes ("gb2312"); if (bytes == null || bytes.length> 2 || bytes.length <= 0) {neue RunTimeException werfen ("illegale Ressourcenzeichenfolge"); } if (bytes.length == 1) {asc = bytes [0]; } if (bytes.length == 2) {int HighByte = 256 + Bytes [0]; int lowbyte = 256 + bytes [1]; ASC = (256 * HighByte + LowByte) - 256 * 256; }} catch (exception e) {System.out .println ("Fehler: chinespelling.class-getchsascii (String chs)" + e); } return asc; } / ** * einzelnes Wort Parsen * * * * / public String convert (string str) {String result = null; int ascii = getChsascii (str); if (ascii> 0 && ascii <160) {result = String.ValueOf ((char) ascii); } else {for (int i = (pyvalue.length-1); i> = 0; i--) {if (pyValue [i] <= ascii) {result = pystr [i]; brechen; }}} Rückgabeergebnis; } / ** * Phrase Parsing * * * / public String Getelling (String CHS) {String -Schlüssel, Wert; buffer = new StringBuilder (); für (int i = 0; i <chs.Length (); i ++) {key = chs.substring (i, i+1); if (key.getBytes (). Länge> = 2) {value = (string) convert (key); if (value == null) {value = "unbekannt"; }} else {value = key; } buffer.Append (Wert); } return buffer.toString (); } public String getSpelling () {return this.getSelling (this.getResource ()); }}erreichen
String Country = "Chinesische Zeichen"; public String getString () {// return the Pinyin return pinyinchinese.getInstance (). Getelling (Land); }Danke fürs Lesen, ich hoffe, es kann Ihnen helfen. Vielen Dank für Ihre Unterstützung für diese Seite!