นำเข้า Java.util.Collections; นำเข้า java.util.iterator; นำเข้า java.util.linkedhashmap; นำเข้า java.util.map; / ** * 将汉字转化为全拼 */ คลาสสาธารณะ cntospell1 {แผนที่คงที่ส่วนตัว <สตริง, จำนวนเต็ม> spellmap = null; // 存放生僻字和其拼音的แผนที่แบบคงที่ส่วนตัว <อักขระ, สตริง> uncommonwordSmap = null; Static {if (SpellMap == null) {SpellMap = Collections.synchronizedMap (LinkedHashMap ใหม่ <String, Integer> (396)); uncommonwordsmap = collections.synchronizedmap (ใหม่ LinkedHashMap <อักขระ, สตริง> (200)); } เริ่มต้น (); Inituncommonwords (); } ส่วนตัว cntospell1 () {} / ** * 初始化 * / โมฆะคงที่ส่วนตัวเริ่มต้น () {Spellmap.put ("'a", -20319); SpellMap.put ("'AI", -20317); SpellMap.put ("'an", -20304); Spellmap.put ("'ang", -20295); SpellMap.put ("'AO", -20292); SpellMap.put ("BA", -20283); Spellmap.put ("Bai", -20265); SpellMap.put ("Ban", -20257); SpellMap.put ("Bang", -20242); Spellmap.put ("Bao", -20230); SpellMap.put ("bei", -20051); SpellMap.put ("Ben", -20036); Spellmap.put ("Beng", -20032); SpellMap.put ("bi", -20026); SpellMap.put ("Bian", -20002); Spellmap.put ("Biao", -19990); Spellmap.put ("Bie", -19986); Spellmap.put ("bin", -19982); SpellMap.put ("Bing", -19976); SpellMap.put ("bo", -19805); SpellMap.put ("bu", -19784); SpellMap.put ("CA", -19775); Spellmap.put ("Cai", -19774); SpellMap.put ("Can", -19763); SpellMap.put ("Cang", -19756); Spellmap.put ("Cao", -19751); SpellMap.put ("CE", -19746); Spellmap.put ("Ceng", -19741); Spellmap.put ("Cha", -19739); Spellmap.put ("chai", -19728); SpellMap.put ("Chan", -19725); SpellMap.put ("Chang", -19715); Spellmap.put ("chao", -19540); Spellmap.put ("Che", -19531); Spellmap.put ("Chen", -19525); Spellmap.put ("Cheng", -19515); SpellMap.put ("Chi", -19500); Spellmap.put ("Chong", -19484); Spellmap.put ("chou", -19479); Spellmap.put ("chu", -19467); Spellmap.put ("Chuai", -19289); Spellmap.put ("Chuan", -19288); SpellMap.put ("Chuang", -19281); SpellMap.put ("Chui", -19275); SpellMap.put ("Chun", -19270); Spellmap.put ("chuo", -19263); SpellMap.put ("CI", -19261); SpellMap.put ("cong", -19249); SpellMap.put ("Cou", -19243); SpellMap.put ("Cu", -19242); Spellmap.put ("Cuan", -19238); SpellMap.put ("CUI", -19235); SpellMap.put ("CUN", -19227); Spellmap.put ("Cuo", -19224); SpellMap.put ("DA", -19218); Spellmap.put ("Dai", -19212); Spellmap.put ("Dan", -19038); SpellMap.put ("Dang", -19023); SpellMap.put ("Dao", -19018); SpellMap.put ("de", -19006); Spellmap.put ("Deng", -19003); SpellMap.put ("DI", -18996); Spellmap.put ("Dian", -18977); Spellmap.put ("diao", -18961); Spellmap.put ("Die", -18952); SpellMap.put ("ding", -18783); Spellmap.put ("diu", -18774); Spellmap.put ("Dong", -18773); SpellMap.put ("Dou", -18763); SpellMap.put ("DU", -18756); SpellMap.put ("Duan", -18741); SpellMap.put ("DUI", -18735); SpellMap.put ("DUN", -18731); Spellmap.put ("duo", -18722); SpellMap.put ("'E", -18710); Spellmap.put ("'en", -18697); Spellmap.put ("'er", -18696); SpellMap.put ("FA", -18526); SpellMap.put ("Fan", -18518); SpellMap.put ("Fang", -18501); SpellMap.put ("FEI", -18490); SpellMap.put ("Fen", -18478); Spellmap.put ("Feng", -18463); SpellMap.put ("FO", -18448); Spellmap.put ("fou", -18447); SpellMap.put ("FU", -18446); SpellMap.put ("GA", -18239); Spellmap.put ("gai", -18237); Spellmap.put ("Gan", -18231); Spellmap.put ("Gang", -18220); Spellmap.put ("Gao", -18211); SpellMap.put ("ge", -18201); SpellMap.put ("GEI", -18184); SpellMap.put ("gen", -18183); Spellmap.put ("geng", -18181); SpellMap.put ("Gong", -18012); SpellMap.put ("GOU", -17997); SpellMap.put ("gu", -17988); SpellMap.put ("GUA", -17970); Spellmap.put ("Guai", -17964); Spellmap.put ("Guan", -17961); SpellMap.put ("guang", -17950); SpellMap.put ("GUI", -17947); SpellMap.put ("Gun", -17931); SpellMap.put ("guo", -17928); SpellMap.put ("HA", -17922); SpellMap.put ("Hai", -17759); Spellmap.put ("Han", -17752); SpellMap.put ("Hang", -17733); SpellMap.put ("Hao", -17730); SpellMap.put ("เขา", -17721); Spellmap.put ("hei", -17703); SpellMap.put ("Hen", -17701); Spellmap.put ("Heng", -17697); Spellmap.put ("Hong", -17692); SpellMap.put ("Hou", -17683); Spellmap.put ("Hu", -17676); SpellMap.put ("HUA", -17496); Spellmap.put ("Huai", -17487); Spellmap.put ("Huan", -17482); SpellMap.put ("Huang", -17468); Spellmap.put ("Hui", -17454); Spellmap.put ("Hun", -17433); SpellMap.put ("HUO", -17427); SpellMap.put ("JI", -17417); Spellmap.put ("Jia", -17202); SpellMap.put ("Jian", -17185); Spellmap.put ("Jiang", -16983); Spellmap.put ("Jiao", -16970); Spellmap.put ("Jie", -16942); SpellMap.put ("Jin", -16915); SpellMap.put ("Jing", -16733); SpellMap.put ("JIONG", -16708); Spellmap.put ("jiu", -16706); Spellmap.put ("Ju", -16689); SpellMap.put ("Juan", -16664); SpellMap.put ("Jue", -16657); SpellMap.put ("Jun", -16647); SpellMap.put ("KA", -16474); Spellmap.put ("Kai", -16470); Spellmap.put ("Kan", -16465); SpellMap.put ("Kang", -16459); Spellmap.put ("Kao", -16452); SpellMap.put ("ke", -16448); SpellMap.put ("Ken", -16433); Spellmap.put ("Keng", -16429); SpellMap.put ("Kong", -16427); SpellMap.put ("KOU", -16423); SpellMap.put ("KU", -16419); SpellMap.put ("KUA", -16412); Spellmap.put ("Kuai", -16407); Spellmap.put ("Kuan", -16403); SpellMap.put ("Kuang", -16401); Spellmap.put ("Kui", -16393); SpellMap.put ("kun", -16220); Spellmap.put ("kuo", -16216); SpellMap.put ("la", -16212); Spellmap.put ("Lai", -16205); SpellMap.put ("LAN", -16202); SpellMap.put ("Lang", -16187); Spellmap.put ("Lao", -16180); SpellMap.put ("Le", -16171); SpellMap.put ("Lei", -16169); Spellmap.put ("Leng", -16158); SpellMap.put ("Li", -16155); Spellmap.put ("Lia", -15959); Spellmap.put ("Lian", -15958); Spellmap.put ("Liang", -15944); Spellmap.put ("Liao", -15933); SpellMap.put ("Lie", -15920); SpellMap.put ("Lin", -15915); SpellMap.put ("Ling", -15903); Spellmap.put ("Liu", -15889); SpellMap.put ("ยาว", -15878); SpellMap.put ("Lou", -15707); SpellMap.put ("lu", -15701); SpellMap.put ("LV", -15681); Spellmap.put ("Luan", -15667); SpellMap.put ("Lue", -15661); SpellMap.put ("LUN", -15659); Spellmap.put ("luo", -15652); SpellMap.put ("MA", -15640); SpellMap.put ("mai", -15631); SpellMap.put ("Man", -15625); SpellMap.put ("Mang", -15454); Spellmap.put ("Mao", -15448); SpellMap.put ("Me", -15436); SpellMap.put ("Mei", -15435); SpellMap.put ("Men", -15419); Spellmap.put ("Meng", -15416); SpellMap.put ("MI", -15408); Spellmap.put ("Mian", -15394); Spellmap.put ("Miao", -15385); Spellmap.put ("Mie", -15377); SpellMap.put ("min", -15375); SpellMap.put ("Ming", -15369); SpellMap.put ("MIU", -15363); SpellMap.put ("MO", -15362); SpellMap.put ("MOU", -15183); SpellMap.put ("mu", -15180); SpellMap.put ("Na", -15165); SpellMap.put ("NAI", -15158); Spellmap.put ("Nan", -15153); SpellMap.put ("Nang", -15150); Spellmap.put ("Nao", -15149); SpellMap.put ("NE", -15144); SpellMap.put ("Nei", -15143); SpellMap.put ("Nen", -15141); Spellmap.put ("Neng", -15140); Spellmap.put ("Ni", -15139); SpellMap.put ("Nian", -15128); Spellmap.put ("Niang", -15121); Spellmap.put ("Niao", -15119); Spellmap.put ("Nie", -15117); SpellMap.put ("NIN", -15110); SpellMap.put ("Ning", -15109); SpellMap.put ("NIU", -14941); Spellmap.put ("Nong", -14937); SpellMap.put ("NU", -14933); SpellMap.put ("NV", -14930); Spellmap.put ("Nuan", -14929); Spellmap.put ("nue", -14928); SpellMap.put ("NUO", -14926); SpellMap.put ("'O", -14922); Spellmap.put ("'ou", -14921); SpellMap.put ("PA", -14914); SpellMap.put ("PAI", -14908); SpellMap.put ("PAN", -14902); SpellMap.put ("Pang", -14894); SpellMap.put ("PAO", -14889); SpellMap.put ("PEI", -14882); SpellMap.put ("ปากกา", -14873); Spellmap.put ("Peng", -14871); SpellMap.put ("PI", -14857); SpellMap.put ("pian", -14678); SpellMap.put ("PIAO", -14674); Spellmap.put ("Pie", -14670); SpellMap.put ("PIN", -14668); SpellMap.put ("Ping", -14663); SpellMap.put ("PO", -14654); Spellmap.put ("pu", -14645); SpellMap.put ("Qi", -14630); Spellmap.put ("Qia", -14594); SpellMap.put ("Qian", -14429); SpellMap.put ("Qiang", -14407); Spellmap.put ("Qiao", -14399); Spellmap.put ("Qie", -14384); SpellMap.put ("qin", -14379); SpellMap.put ("Qing", -14368); Spellmap.put ("Qiong", -14355); Spellmap.put ("qiu", -14353); SpellMap.put ("qu", -14345); SpellMap.put ("Quan", -14170); Spellmap.put ("que", -14159); SpellMap.put ("QUN", -14151); SpellMap.put ("Ran", -14149); Spellmap.put ("Rang", -14145); SpellMap.put ("Rao", -14140); SpellMap.put ("Re", -14137); SpellMap.put ("Ren", -14135); Spellmap.put ("Reng", -14125); SpellMap.put ("RI", -14123); Spellmap.put ("Rong", -14122); SpellMap.put ("rou", -14112); Spellmap.put ("ru", -14109); Spellmap.put ("Ruan", -14099); Spellmap.put ("rui", -14097); SpellMap.put ("Run", -14094); Spellmap.put ("ruo", -14092); SpellMap.put ("SA", -14090); SpellMap.put ("SAI", -14087); SpellMap.put ("SAN", -14083); SpellMap.put ("Sang", -13917); SpellMap.put ("SAO", -13914); SpellMap.put ("SE", -13910); SpellMap.put ("Sen", -13907); SpellMap.put ("SENG", -13906); Spellmap.put ("sha", -13905); Spellmap.put ("Shai", -13896); Spellmap.put ("Shan", -13894); SpellMap.put ("Shang", -13878); SpellMap.put ("Shao", -13870); SpellMap.put ("She", -13859); SpellMap.put ("Shen", -13847); Spellmap.put ("Sheng", -13831); Spellmap.put ("Shi", -13658); SpellMap.put ("shou", -13611); SpellMap.put ("Shu", -13601); Spellmap.put ("Shua", -13406); Spellmap.put ("Shuai", -13404); Spellmap.put ("Shuan", -13400); Spellmap.put ("Shuang", -13398); Spellmap.put ("Shui", -13395); SpellMap.put ("Shun", -13391); SpellMap.put ("Shuo", -13387); Spellmap.put ("Si", -13383); SpellMap.put ("เพลง", -13367); SpellMap.put ("SOU", -13359); SpellMap.put ("su", -13356); Spellmap.put ("Suan", -13343); SpellMap.put ("SUI", -13340); Spellmap.put ("Sun", -13329); SpellMap.put ("SUO", -13326); SpellMap.put ("ta", -13318); Spellmap.put ("Tai", -13147); Spellmap.put ("tan", -13138); SpellMap.put ("Tang", -13120); SpellMap.put ("Tao", -13107); SpellMap.put ("TE", -13096); Spellmap.put ("Teng", -13095); SpellMap.put ("TI", -13091); Spellmap.put ("tian", -13076); Spellmap.put ("tiao", -13068); SpellMap.put ("tie", -13063); SpellMap.put ("Ting", -13060); Spellmap.put ("tong", -12888); SpellMap.put ("tou", -12875); SpellMap.put ("TU", -12871); Spellmap.put ("Tuan", -12860); SpellMap.put ("tui", -12858); SpellMap.put ("tun", -12852); Spellmap.put ("tuo", -12849); SpellMap.put ("WA", -12838); SpellMap.put ("WAI", -12831); SpellMap.put ("WAN", -12829); SpellMap.put ("Wang", -12812); SpellMap.put ("Wei", -12802); SpellMap.put ("Wen", -12607); Spellmap.put ("Weng", -12597); Spellmap.put ("wo", -12594); Spellmap.put ("Wu", -12585); SpellMap.put ("xi", -12556); SpellMap.put ("Xia", -12359); SpellMap.put ("Xian", -12346); SpellMap.put ("Xiang", -12320); SpellMap.put ("Xiao", -12300); SpellMap.put ("xie", -12120); SpellMap.put ("Xin", -12099); SpellMap.put ("Xing", -12089); SpellMap.put ("Xiong", -12074); SpellMap.put ("XIU", -12067); SpellMap.put ("Xu", -12058); SpellMap.put ("Xuan", -12039); SpellMap.put ("xue", -11867); SpellMap.put ("XUN", -11861); Spellmap.put ("ya", -11847); SpellMap.put ("Yan", -11831); SpellMap.put ("Yang", -11798); Spellmap.put ("Yao", -11781); Spellmap.put ("Ye", -11604); Spellmap.put ("yi", -11589); Spellmap.put ("Yin", -11536); SpellMap.put ("Ying", -11358); SpellMap.put ("yo", -11340); Spellmap.put ("Yong", -11339); SpellMap.put ("คุณ", -11324); SpellMap.put ("yu", -11303); Spellmap.put ("Yuan", -11097); SpellMap.put ("Yue", -11077); SpellMap.put ("Yun", -11067); SpellMap.put ("ZA", -11055); SpellMap.put ("Zai", -11052); SpellMap.put ("ZAN", -11045); SpellMap.put ("Zang", -11041); SpellMap.put ("Zao", -11038); SpellMap.put ("ze", -11024); SpellMap.put ("Zei", -11020); SpellMap.put ("Zen", -11019); SpellMap.put ("Zeng", -11018); SpellMap.put ("ZHA", -11014); Spellmap.put ("Zhai", -10838); SpellMap.put ("Zhan", -10832); SpellMap.put ("Zhang", -10815); SpellMap.put ("Zhao", -10800); SpellMap.put ("Zhe", -10790); SpellMap.put ("Zhen", -10780); SpellMap.put ("Zheng", -10764); Spellmap.put ("Zhi", -10587); Spellmap.put ("Zhong", -10544); SpellMap.put ("Zhou", -10533); SpellMap.put ("Zhu", -10519); SpellMap.put ("Zhua", -10331); SpellMap.put ("Zhuai", -10329); Spellmap.put ("Zhuan", -10328); SpellMap.put ("Zhuang", -10322); SpellMap.put ("Zhui", -10315); SpellMap.put ("Zhun", -10309); SpellMap.put ("Zhuo", -10307); SpellMap.put ("zi", -10296); SpellMap.put ("Zong", -10281); SpellMap.put ("Zou", -10274); Spellmap.put ("zu", -10270); SpellMap.put ("Zuan", -10262); SpellMap.put ("Zui", -10260); SpellMap.put ("Zun", -10256); Spellmap.put ("Zuo", -10254); } /** * 添加生僻字 * @param cnword 生僻字 * @param Spell 生僻字的拼音, 如果拼音以 a, o, e 开头, 请将开头分别改为请将开头分别改为 'a,' o, 'e,,::::安 ('an) */ โมฆะคงที่สาธารณะ putunCommonword (ถ่าน cnword, คาถาสตริง) {uncommonwordsmap.put (cnword, คาถา); } / ** * 初始化生僻字 * / โมฆะแบบคงที่ส่วนตัวเริ่มต้น initunCommonwords () {putuncommonword ('', "ao"); putuncommonword ('灞', "ba"); putuncommonword ('', "Ben"); putuncommonword ('', "biao"); putuncommonword ('', "biao"); putuncommonword ('杈', "Cha"); putuncommonword ('', "Chen"); putuncommonword ('', "Cheng"); putuncommonword ('魑', "chi"); putuncommonword ('', "Chong"); putuncommonword ('', "Chong"); putuncommonword ('', "cu"); putuncommonword ('毳', "cui"); putuncommonword ('', "Fang"); putuncommonword ('沣', "Feng"); putuncommonword ('', "gou"); putuncommonword ('焓', "Han"); putuncommonword ('', "han"); putuncommonword ('晗', "Han"); putuncommonword ('', "han"); putuncommonword ('翮', "เขา"); putuncommonword ('', "เขา"); putuncommonword ('', "huan"); putuncommonword ('', "hui"); putuncommonword ('', "jie"); putuncommonword ('', "jing"); putuncommonword ('', "jing"); putuncommonword ('', "jing"); putuncommonword ('', "kun"); putuncommonword ('琨', "kun"); putuncommonword ('', "kun"); putuncommonword ('骊', "li"); putuncommonword ('鎏', "liu"); putuncommonword ('', "man"); putuncommonword ('', "mei"); putuncommonword ('淼', "miao"); putuncommonword ('', "nan"); putuncommonword ('', "nan"); putuncommonword ('甯', "ning"); putuncommonword ('', "ning"); putuncommonword ('', "pa"); putuncommonword ('', "pi"); putuncommonword ('', "Qian"); putuncommonword ('', "qin"); putuncommonword ('', "ชิง"); putuncommonword ('', "ชิง"); putuncommonword ('', "ชิง"); putuncommonword ('', "ชิง"); putuncommonword ('', "ชิง"); putuncommonword ('悫', "que"); putuncommonword ('', "que"); putuncommonword ('', "rong"); putuncommonword ('', "shen"); putuncommonword ('', "shen"); putuncommonword ('', "shen"); putuncommonword ('', "Sheng"); putuncommonword ('', "Sheng"); putuncommonword ('晟', "Sheng"); putuncommonword ('', "Sheng"); putuncommonword ('眚', "Sheng"); putuncommonword ('', "Sheng"); putuncommonword ('', "Sheng"); putuncommonword ('', "Sheng"); putuncommonword ('', "Sheng"); putuncommonword ('', "shi"); putuncommonword ('', "su"); putuncommonword ('', "tao"); putuncommonword ('', "tian"); putuncommonword ('仝', "tong"); putuncommonword ('', "wei"); putuncommonword ('炜', "wei"); putuncommonword ('玮', "wei"); putuncommonword ('', "wu"); putuncommonword ('邬', "wu"); putuncommonword ('', "xi"); putuncommonword ('', "Xian"); putuncommonword ('', "Xiao"); putuncommonword ('', "Xiao"); putuncommonword ('筱', "Xiao"); putuncommonword ('勰', "xie"); putuncommonword ('忻', "Xin"); putuncommonword ('庥', "xiu"); putuncommonword ('', "xu"); putuncommonword ('', "xu"); putuncommonword ('', "xu"); putuncommonword ('', "xuan"); putuncommonword ('煊', "xuan"); putuncommonword ('', "xuan"); putuncommonword ('', "xuan"); putuncommonword ('暄', "xuan"); putuncommonword ('娅', "ya"); putuncommonword ('琰', "yan"); putuncommonword ('妍', "yan"); putuncommonword ('焱', "yan"); putuncommonword ('', "หยาง"); putuncommonword ('', "หยาง"); putuncommonword ('', "หยาง"); putuncommonword ('', "yao"); putuncommonword ('', "yao"); putuncommonword ('怡', "yi"); putuncommonword ('', "yi"); putuncommonword ('', "yi"); putuncommonword ('', "yi"); putuncommonword ('瑛', "ying"); putuncommonword ('', "ying"); putuncommonword ('', "ying"); putuncommonword ('', "ying"); putuncommonword ('滢', "ying"); putuncommonword ('', "ying"); putuncommonword ('莜', "คุณ"); putuncommonword ('昱', "yu"); putuncommonword ('', "หยุน"); putuncommonword ('', "zhe"); putuncommonword ('', "zhe"); putuncommonword ('', "zhi"); } /*** 获得单个汉字的 ascii * @param cn 汉字字符 * @return 汉字对应的 ascii, 错误时返回 0 */ สาธารณะคงที่ int getcnascii (ถ่าน cn) {byte [] bytes = (string.valueof (cn)). getBytes (); if (bytes == null || bytes.length == 0 || bytes.length> 2) {// 错误 return 0; } if (bytes.length == 1) {// 英文字符 return bytes [0]; } if (bytes.length == 2) {// 中文字符 int hightbyte = 256 + ไบต์ [0]; int lowbyte = 256 + ไบต์ [1]; return (256 * Hightbyte + LowByte) - 256 * 256; // 返回 ascii} return 0; // 错误} /** * 根据 ascii 码到 spellmap 中查找对应的拼音 * @param ascii ascii * @return ascii 对应的拼音, 如果 ascii 对应的字符为单字符, 则返回对应的单字符, 如果不是单字符且在 SpellMap 中没找到对应的拼音, 则返回空字符串 (""), */ สตริงคงที่สาธารณะ getSpellbyascii (int ascii) {ถ้า (ascii> 0 && ascii <160) {// 单字符 return string ค่าของ ((char) ascii); } if (ascii <-20319 || ascii> -10247) {// 不知道的字符 return ""; } string cally = null; // คีย์จำนวนเต็ม asciirang; // ค่าสตริงสะกดคำ = null; // 用来保存上次轮循环的คีย์ int asciirangprevious = -20319; // 用来保存上一次循环的 value สำหรับ (iterator it = spellmap.keyset (). iterator (); it.hasnext ();) {spell = (string) it.next (); // 拼音 asciirang = spellmap.get (คาถา); // 拼音的 ascii if (asciirang! = null) {ถ้า (ascii> = asciirangprevious && ascii <asciirang) {// 区间找到, 返回对应的拼音 return (Spellprevious == null)? คาถา: Spellprevious; } else {SpellPrevious = Spell; asciirangprevious = asciirang; } } } กลับ ""; } /** * 获取字符串的全拼或首拼, 是汉字则转化为对应的拼音或拼音首字母, 其它字符不进行转换 * @param cnstr 要获取全拼或首拼的字符串 * @param OnlyFirstSpell 是否只获取首拼, 为 true 时, 只获取首拼, 为 false 时, 获取全拼获取全拼 * @ @@return string cnstr 的全拼或首拼, 如果 cnstr 为 null 时, 返回 "" */ สตริงคงที่สาธารณะ getSpell (String CNSTR, Boolean OnlyFirstSpell) {ถ้า (cnstr == null) {return ""; } char [] chars = cnstr.trim (). tochararray (); StringBuffer sb = new StringBuffer (); สำหรับ (int i = 0, len = chars.length; i <len; i ++) {int ascii = getcnascii (chars [i]); if (ascii == 0) {// 如果获取汉字的 ascii 出错, 则不进行转换 sb.append (chars [i]); } else {string cally = getSpellbyascii (ascii); // 根据 ascii 取拼音ถ้า (สะกด == null || spell.length () == 0) {// 如果根据 ascii 取拼音没取到, 则到生僻字แผนที่中取สะกด = uncommonwordsmap.get ฉัน]); } if (spell == null || spell.length () == 0) {// 如果没有取到对应的拼音, 则不做转换, 追加原字符สะกด = uncommonwordsmap.get (chars [i]); } else {if (onlyFirstSpell) {sb.append (Spell.startswith ("'")? sub.substring (1, 2): sub.substring (0, 1)); } else {sb.append (คาถา); }}}} // end of for return sb.toString (); } โมฆะคงที่สาธารณะหลัก (สตริง [] args) {string [] s = {"获取汉字全拼和首拼测试", "นี่คือการทดสอบ", "a, b; c [d]", "标,点。 "," 圆角数字123, 特殊符号・¥% - ― …… "," 繁体字:: "," 西安 "," 山 "}; สำหรับ (int i = 0; i <s.length; i ++) {long l1 = system.currentTimeMillis (); System.out.println (s [i] + "的全拼:" + getSpell (s [i], false)); System.out.println (s [i] + "的首拼:" + getSpell (s [i], true)); System.out.println ("获取全拼和首拼共用了"+(System.currentTimeMillis ()-L1)+"毫秒/n"); -