AX中文转拼音
static str Chinese2Pinyin(str _str) { boolean retval; InteropPermission permission; System.Text.RegularExpressions.Regex re; str pyValueStr="-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,-14663,-14654," +"-14645,-14630,-14594,-14429,-14407,-14399,-14384,-14379,-14368,-14355,-14353,-14345," +"-14170,-14159,-14151,-14149,-14145,-14140,-14137,-14135,-14125,-14123,-14122,-14112," +"-14109,-14099,-14097,-14094,-14092,-14090,-14087,-14083,-13917,-13914,-13910,-13907," +"-13906,-13905,-13896,-13894,-13878,-13870,-13859,-13847,-13831,-13658,-13611,-13601," +"-13406,-13404,-13400,-13398,-13395,-13391,-13387,-13383,-13367,-13359,-13356,-13343," +"-13340,-13329,-13326,-13318,-13147,-13138,-13120,-13107,-13096,-13095,-13091,-13076," +"-13068,-13063,-13060,-12888,-12875,-12871,-12860,-12858,-12852,-12849,-12838,-12831," +"-12829,-12812,-12802,-12607,-12597,-12594,-12585,-12556,-12359,-12346,-12320,-12300," +"-12120,-12099,-12089,-12074,-12067,-12058,-12039,-11867,-11861,-11847,-11831,-11798," +"-11781,-11604,-11589,-11536,-11358,-11340,-11339,-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" ; container pyValue=str2con(pyValueStr,","); str pyNameStr="A,Ai,An,Ang,Ao,Ba,Bai,Ban,Bang,Bao,Bei,Ben," +"Beng,Bi,Bian,Biao,Bie,Bin,Bing,Bo,Bu,Ba,Cai,Can," +"Cang,Cao,Ce,Ceng,Cha,Chai,Chan,Chang,Chao,Che,Chen,Cheng," +"Chi,Chong,Chou,Chu,Chuai,Chuan,Chuang,Chui,Chun,Chuo,Ci,Cong," +"Cou,Cu,Cuan,Cui,Cun,Cuo,Da,Dai,Dan,Dang,Dao,De," +"Deng,Di,Dian,Diao,Die,Ding,Diu,Dong,Dou,Du,Duan,Dui," +"Dun,Duo,E,En,Er,Fa,Fan,Fang,Fei,Fen,Feng,Fo," +"Fou,Fu,Ga,Gai,Gan,Gang,Gao,Ge,Gei,Gen,Geng,Gong," +"Gou,Gu,Gua,Guai,Guan,Guang,Gui,Gun,Guo,Ha,Hai,Han," +"Hang,Hao,He,Hei,Hen,Heng,Hong,Hou,Hu,Hua,Huai,Huan," +"Huang,Hui,Hun,Huo,Ji,Jia,Jian,Jiang,Jiao,Jie,Jin,Jing," +"Jiong,Jiu,Ju,Juan,Jue,Jun,Ka,Kai,Kan,Kang,Kao,Ke," +"Ken,Keng,Kong,Kou,Ku,Kua,Kuai,Kuan,Kuang,Kui,Kun,Kuo," +"La,Lai,Lan,Lang,Lao,Le,Lei,Leng,Li,Lia,Lian,Liang," +"Liao,Lie,Lin,Ling,Liu,Long,Lou,Lu,Lv,Luan,Lue,Lun," +"Luo,Ma,Mai,Man,Mang,Mao,Me,Mei,Men,Meng,Mi,Mian," +"Miao,Mie,Min,Ming,Miu,Mo,Mou,Mu,Na,Nai,Nan,Nang," +"Nao,Ne,Nei,Nen,Neng,Ni,Nian,Niang,Niao,Nie,Nin,Ning," +"Niu,Nong,Nu,Nv,Nuan,Nue,Nuo,O,Ou,Pa,Pai,Pan," +"Pang,Pao,Pei,Pen,Peng,Pi,Pian,Piao,Pie,Pin,Ping,Po," +"Pu,Qi,Qia,Qian,Qiang,Qiao,Qie,Qin,Qing,Qiong,Qiu,Qu," +"Quan,Que,Qun,Ran,Rang,Rao,Re,Ren,Reng,Ri,Rong,Rou," +"Ru,Ruan,Rui,Run,Ruo,Sa,Sai,San,Sang,Sao,Se,Sen," +"Seng,Sha,Shai,Shan,Shang,Shao,She,Shen,Sheng,Shi,Shou,Shu," +"Shua,Shuai,Shuan,Shuang,Shui,Shun,Shuo,Si,Song,Sou,Su,Suan," +"Sui,Sun,Suo,Ta,Tai,Tan,Tang,Tao,Te,Teng,Ti,Tian," +"Tiao,Tie,Ting,Tong,Tou,Tu,Tuan,Tui,Tun,Tuo,Wa,Wai," +"Wan,Wang,Wei,Wen,Weng,Wo,Wu,Xi,Xia,Xian,Xiang,Xiao," +"Xie,Xin,Xing,Xiong,Xiu,Xu,Xuan,Xue,Xun,Ya,Yan,Yang," +"Yao,Ye,Yi,Yin,Ying,Yo,Yong,You,Yu,Yuan,Yue,Yun," +"Za, Zai,Zan,Zang,Zao,Ze,Zei,Zen,Zeng,Zha,Zhai,Zhan," +"Zhang,Zhao,Zhe,Zhen,Zheng,Zhi,Zhong,Zhou,Zhu,Zhua,Zhuai,Zhuan," +"Zhuang,Zhui,Zhun,Zhuo,Zi,Zong,Zou,Zu,Zuan,Zui,Zun,Zuo"; container pyName=str2con(pyNameStr,","); int i,j,i1,i2,chASC; str ch,pyString; System.Text.Encoding encoding=System.Text.Encoding::get_Default(); System.Byte[] bytes; permission = new InteropPermission(InteropKind::ClrInterop); permission.assert(); re = new System.Text.RegularExpressions.Regex("^[\u4e00-\u9fa5]$"); for(i=1;i<=strlen(_str);i++) { ch=substr(_str,i,1); retval = CLRInterop::getAnyTypeForObject(re.IsMatch(ch)); if(retval) { bytes=encoding.GetBytes(ch); i1=bytes.GetValue(0); i2=bytes.GetValue(1); chASC=i1 * 256 + i2 - 65536; if (chASC > 0 && chASC < 160) pyString+=ch; else { if(chASC == -9254) pyString += "Zhen"; else { for(j=conlen(pyValue);j>0;j--) { if (str2int(conpeek(pyValue,j)) <= chASC) { pyString +=conpeek(pyName,j); break; } } } } } else pyString+=ch; } return pyString; }
参考 https://blog.csdn.net/qq_28018731/article/details/53202586