C# 漢字轉拼音(支持GB2312字符集中所有漢字)

因爲要用到將漢字轉換成拼音的功能,在網上找了一下。

結果搜到這個解決方法:http://www.cnblogs.com/cxd4321/p/4203383.html

在這裏衷心感謝技術大神們的辛勤的發帖。大笑

下面內容就是將連接的解決方法直接拷貝粘貼了過來。


GB2312標準共收錄6763個漢字,其中一級漢字3755個,二級漢字3008個。
 
分區表示 
 GB 2312中對所收漢字進行了“分區”處理,每區含有94個漢字/符號。這種表示方式也稱爲區位碼。
 1)01-09區爲特殊符號。
 2)16-55區爲一級漢字,按拼音排序。 
 3)56-87區爲二級漢字,按部首/筆畫排序。
 4)10-15區及88-94區則未有編碼。

也就是說二級漢字與拼音不存在聯繫。這樣網上大部分漢字轉拼音類只能正確獲取部分漢字的拼音(一級漢字).只有小數的3000多一點漢字.而二級漢字根本查詢不到,比如“蜻蜓”,比如"閏",雖然網上補上了二級漢字中"深圳"的圳,但與二級漢字的的總數相比,顯得還是遠遠不夠的。

因此據於上面的問題就對現有網上存在的方法進行了擴展,使其能獲取GB2312-80編碼規則中的所有中文漢字.

功能描述: 
1.漢字字符串轉換爲全拼表示 
2.漢字字符串轉換爲全拼音的首字母表示.比如:"生活的七色板"返回的是"SHDQSB"

相比現有網上絕大部分方法做的性能改進:
1.使用StringBuilder連接要解析的字符串中的各個拼音.這個方法大量的字符串性能改善非常明顯。
2.對一級字符串(日常使用最普遍的漢字)採用分塊查找.加快查找速度。
3.支持一二級所有漢字(也就是支持所有GB2312字符集中漢字)。

缺點:
不能區分多音字,只完全支持GB2312-80漢字庫,如果是多音字,只能得到最後一個列表中的拼音。
補充:如果想支持多音字,建議用詞庫資源庫的方式進行查找編程。
如果有時間,我也會用這個詞庫資源庫方式再作一個漢字轉拼音的類庫,以儘量支持漢字多音字及標號拼音。敬請關注。


下面是當前改進的漢字轉拼音類:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace MyPinYin
{
    /*
     *   GB2312標準共收錄6763個漢字,其中一級漢字3755個,二級漢字3008個。
     *  分區表示 
     *    GB 2312中對所收漢字進行了“分區”處理,每區含有94個漢字/符號。這種表示方式也稱爲區位碼。
     *    1)01-09區爲特殊符號。
     *    2)16-55區爲一級漢字,按拼音排序。 
     *    3)56-87區爲二級漢字,按部首/筆畫排序。
     *    4)10-15區及88-94區則未有編碼。
     * */

    /// <summary>
    /// 漢字拼音轉換類
    /// </summary>
    public class PinYinConverter
    {
        #region 數組信息

        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, -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
        };

        private static string[] pyName = new string[] 
        { 
             "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" 
         };

        #region 二級漢字
        /// <summary>
        /// 二級漢字數組
        /// </summary>
        private static string[] otherChinese = new string[]
        {
            "亍","丌","兀","丐","廿","卅","丕","亙","丞","鬲","孬","噩","丨","禺","丿"
            ,"匕","乇","夭","爻","卮","氐","囟","胤","馗","毓","睾","鞀","丶","亟","鼐","乜"
            ,"乩","亓","羋","孛","嗇","嘏","仄","厙","厝","厴","厥","廝","靨","贗","匚","叵"
            ,"匭","匱","匾","賾","卦","卣","刂","刈","刎","剄","刳","劌","剴","剌","剞","剡"
            ,"剜","蒯","剽","劂","劁","劐","劓","冂","罔","亻","仃","仉","仂","仨","仡","仫"
            ,"仞","傴","仳","伢","佤","仵","倀","傖","伉","佇","佞","佧","攸","佚","佝"
            ,"佟","佗","伲","伽","佶","佴","侑","侉","侃","侏","佾","佻","儕","佼","儂"
            ,"侔","儔","儼","儷","俅","俚","俁","俜","俑","俟","俸","倩","偌","俳","倬","倏"
            ,"倮","倭","俾","倜","倌","倥","倨","僨","偃","偕","偈","偎","傯","僂","儻","儐"
            ,"儺","傺","僖","儆","僭","僬","僦","僮","儇","儋","仝","氽","佘","僉","俎","龠"
            ,"汆","糴","兮","巽","黌","馘","囅","夔","勹","匍","訇","匐","鳧","夙","兕","亠"
            ,"兗","亳","袞","袤","褻","臠","裒","稟","嬴","蠃","羸","冫","冱","冽","冼"
            ,"凇","冖","冢","冥","訁","訐","訌","訕","謳","詎","訥","詁","訶","詆","詔"
            ,"詘","詒","誆","誄","詿","詰","詼","詵","詬","詮","諍","諢","詡","誚","誥","誑"
            ,"誒","諏","諑","諉","諛","諗","諂","誶","諶","諫","謔","謁","諤","諭","諼","諳"
            ,"諦","諮","諞","謨","讜","謖","諡","謐","謫","譾","譖","譙","譎","讞","譫","讖"
            ,"卩","巹","阝","阢","阡","阱","阪","阽","阼","陂","陘","陔","陟","隉","陬","陲"
            ,"陴","隈","隍","隗","隰","邗","邛","鄺","邙","鄔","邡","邴","邳","邶","鄴"
            ,"邸","邰","郟","郅","邾","鄶","郄","郇","鄆","酈","郢","郜","郗","郛","郫"
            ,"郯","郾","鄄","鄢","鄞","鄣","鄱","鄯","鄹","酃","酆","芻","奐","勱","劬","劭"
            ,"劾","哿","勐","勖","勰","叟","燮","矍","廴","凵","凼","鬯","厶","弁","畚","巰"
            ,"坌","堊","垡","塾","墼","壅","壑","圩","圬","圪","圳","壙","圮","圯","壢","圻"
            ,"阪","坩","壠","坫","壚","坼","坻","坨","坭","坶","坳","埡","垤","垌","塏","埏"
            ,"垧","堖","垓","垠","埕","塒","堝","壎","埒","垸","埴","垵","埸","埤","埝"
            ,"堋","堍","埽","埭","堀","堞","堙","塄","堠","塥","塬","墁","墉","墚","墀"
            ,"馨","鼙","懿","艹","艽","艿","芏","芊","芨","芄","芎","芑","薌","芙","芫","芸"
            ,"芾","芰","藶","苊","苣","芘","芷","芮","莧","萇","蓯","芩","芴","芡","芪","芟"
            ,"苄","苧","芤","苡","茉","苷","苤","蘢","茇","苜","苴","苒","檾","茌","苻","苓"
            ,"蔦","茚","茆","塋","煢","苠","苕","茜","荑","蕘","蓽","茈","莒","茼","茴","茱"
            ,"莛","蕎","茯","荏","荇","荃","薈","荀","茗","薺","茭","茺","茳","犖","滎"
            ,"蕁","茛","藎","蕒","蓀","葒","葤","莰","荸","蒔","萵","莠","莪","莓","莜"
            ,"蒞","荼","薟","莩","荽","蕕","荻","莘","莞","莨","鶯","蓴","菁","萁","菥","菘"
            ,"堇","萘","萋","菝","菽","菖","萜","萸","萑","萆","菔","菟","萏","萃","菸","菹"
            ,"菪","菅","菀","縈","菰","菡","葜","葑","葚","葙","葳","蕆","蒈","葺","蕢","葸"
            ,"萼","葆","葩","葶","蔞","蒎","萱","葭","蓁","蓍","蓐","驀","蒽","蓓","蓊","蒿"
            ,"蒺","蘺","蒡","蒹","蒴","蒗","鎣","蕷","蔌","甍","蔸","蓰","蘞","蔟","藺"
            ,"蕖","蔻","蓿","蓼","蕙","蕈","蕨","蕤","蕞","蕺","瞢","蕃","蘄","蕻","薤"
            ,"薨","薇","薏","蕹","藪","薜","薅","薹","薷","薰","蘚","藁","藜","藿","蘧","蘅"
            ,"蘩","櫱","蘼","廾","弈","夼","奩","耷","奕","奚","奘","匏","尢","尥","尬","尷"
            ,"扌","捫","摶","抻","拊","拚","拗","拮","撟","拶","挹","捋","捃","掭","揶","捱"
            ,"捺","掎","摑","捭","掬","掊","捩","掮","摜","揲","揸","揠","撳","揄","揞","揎"
            ,"摒","揆","掾","攄","摁","搋","搛","搠","搌","搦","搡","摞","攖","摭","撖"
            ,"摺","擷","擼","撙","攛","擀","擐","擗","擤","擢","攉","攥","攮","弋","忒"
            ,"甙","弒","卟","叱","嘰","叩","叨","叻","吒","吖","吆","呋","嘸","囈","呔","嚦"
            ,"呃","吡","唄","咼","唚","吲","咂","咔","呷","呱","呤","咚","嚀","咄","呶","呦"
            ,"噝","哐","咭","哂","咴","噠","咧","咦","嘵","嗶","呲","咣","噦","咻","咿","哌"
            ,"噲","哚","嚌","咩","咪","吒","噥","哏","哞","嘜","哧","嘮","哽","唔","哳","嗩"
            ,"唣","唏","唑","唧","唪","嘖","喏","喵","啉","囀","啁","啕","唿","啐","唼"
            ,"唷","啖","啵","啶","啷","唳","唰","啜","喋","嗒","喃","喱","喹","喈","喁"
            ,"喟","啾","嗖","喑","啻","嗟","嘍","嚳","喔","喙","嗪","嗷","嗉","嘟","嗑","囁"
            ,"嗬","嗔","嗦","嗝","嗄","嗯","嗥","嗲","噯","嗌","嗍","嗨","嗵","嗤","轡","嘞"
            ,"嘈","嘌","嘁","嚶","嘣","嗾","嘀","嘧","嘭","噘","嘹","噗","嘬","噍","噢","噙"
            ,"嚕","噌","噔","嚆","噤","噱","噫","噻","噼","嚅","嚓","嚯","囔","囗","囝","囡"
            ,"圇","囫","囹","囿","圄","圊","圉","圜","幃","帙","帔","帑","幬","幘","幗"
            ,"帷","幄","幔","幛","襆","幡","岌","屺","岍","岐","嶇","岈","峴","嶴","岑"
            ,"嵐","岜","岵","岢","崬","岬","岫","岱","岣","峁","岷","嶧","峒","嶠","峋","崢"
            ,"嶗","崍","崧","崦","崮","崤","崞","崆","崛","嶸","崾","崴","崽","嵬","嵛","嵯"
            ,"嶁","嵫","嵋","嵊","嵩","嵴","嶂","嶙","嶝","豳","嶷","巔","彳","彷","徂","徇"
            ,"徉","後","徠","徙","徜","徨","徭","徵","徼","衢","彡","犭","犰","犴","獷","獁"
            ,"狃","狁","狎","狍","狒","狨","獪","狩","猻","狴","狷","猁","狳","獫","狺"
            ,"狻","猗","猓","玀","猊","猞","猝","獼","猢","猹","猥","蝟","猸","猱","獐"
            ,"獍","獗","獠","獬","獯","獾","舛","夥","飧","夤","夂","飠","餳","飩","餼","飪"
            ,"飫","飭","飴","餉","餑","餘","餛","餷","餿","饃","饈","饉","饊","饌","饢","庀"
            ,"廡","庋","庖","庥","庠","庹","庵","庾","庳","賡","廒","廑","廛","廨","廩","膺"
            ,"忄","忉","忖","懺","憮","忮","慪","忡","忤","愾","悵","愴","忪","忭","忸","怙"
            ,"怵","怦","怛","怏","怍","怩","怫","怊","懌","怡","慟","懨","惻","愷","恂"
            ,"恪","惲","悖","悚","慳","悝","悃","悒","悌","悛","愜","悻","悱","惝","惘"
            ,"惆","惚","悴","慍","憒","愕","愣","惴","愀","愎","愫","慊","慵","憬","憔","憧"
            ,"憷","懍","懵","忝","隳","閂","閆","闈","閎","閔","閌","闥","閭","閫","鬮","閬"
            ,"閾","閶","鬩","閿","閽","閼","闃","闋","闔","闐","闕","闞","丬","爿","戕","氵"
            ,"汔","汜","汊","灃","沅","沐","沔","沌","汨","汩","汴","汶","沆","潙","泐","泔"
            ,"沭","瀧","瀘","泱","泗","沲","泠","泖","濼","泫","泮","沱","泓","泯","涇"
            ,"洹","洧","洌","浹","湞","洇","洄","洙","洎","洫","澮","洮","洵","洚","瀏"
            ,"滸","潯","洳","涑","浯","淶","潿","浞","涓","涔","浜","浠","浼","浣","渚","淇"
            ,"淅","淞","瀆","涿","淠","澠","淦","淝","淙","瀋","涫","淥","涮","渫","湮","湎"
            ,"湫","溲","湟","漵","湓","湔","渲","渥","湄","灩","溱","溘","灄","漭","瀅","溥"
            ,"溧","溽","溻","溷","潷","溴","滏","溏","滂","溟","潢","瀠","瀟","漤","漕","滹"
            ,"漯","漶","瀲","瀦","漪","漉","漩","澉","澍","澌","潸","潲","潼","潺","瀨"
            ,"濉","澧","澹","澶","濂","濡","濮","濞","濠","濯","瀚","瀣","瀛","瀹","瀵"
            ,"灝","灞","宀","宄","宕","宓","宥","宸","甯","騫","搴","寤","寮","褰","寰","蹇"
            ,"謇","辶","迓","迕","迥","迮","迤","邇","迦","逕","迨","逅","逄","逋","邐","逑"
            ,"逍","逖","逡","逵","逶","逭","逯","遄","遑","遒","遐","遨","遘","遢","遛","暹"
            ,"遴","遽","邂","邈","邃","邋","彐","彗","彖","彘","尻","咫","屐","屙","孱","屣"
            ,"屨","羼","弳","弩","弭","艴","弼","鬻","屮","妁","妃","妍","嫵","嫗","妣"
            ,"妗","姊","嬀","妞","妤","姒","妲","妯","姍","妾","婭","嬈","姝","孌","姣"
            ,"姘","奼","娌","娉","媧","嫺","娑","娣","娓","婀","婧","婊","婕","娼","婢","嬋"
            ,"胬","媼","媛","婷","婺","媾","嫫","媲","嬡","嬪","媸","嫠","嫣","嬙","嫖","嫦"
            ,"嫘","嫜","嬉","嬗","嬖","嬲","嬤","孀","尕","尜","孚","孥","孳","孑","孓","孢"
            ,"駔","駟","駙","騶","驛","駑","駘","驍","驊","駢","驪","騏","騍","騅","驂","騭"
            ,"騖","驁","騮","騸","驃","驄","驏","驥","驤","糹","紆","紂","紇","紈","纊"
            ,"紜","紕","紓","紺","紲","紱","縐","紼","絀","紿","絝","絎","絳","綆","綃"
            ,"綈","綾","綺","緋","鞝","緄","綞","綬","綹","綣","綰","緇","緙","緗","緹","緲"
            ,"繢","緦","緶","緱","縋","緡","縉","縝","縟","縞","縭","縊","縑","繽","縹","縵"
            ,"縲","繆","繅","纈","繚","繒","繮","繾","繰","繯","纘","幺","畿","巛","甾","邕"
            ,"玎","璣","瑋","玢","玟","珏","珂","瓏","玷","玳","珀","珉","珈","珥","珙","頊"
            ,"琊","珩","珧","珞","璽","琿","璉","琪","瑛","琦","琥","琨","琰","琮","琬"
            ,"琛","琚","瑁","瑜","瑗","瑕","瑙","璦","瑭","瑾","璜","瓔","璀","璁","璇"
            ,"璋","璞","璨","璩","璐","璧","瓚","璺","韙","韞","韜","杌","杓","杞","杈","榪"
            ,"櫪","枇","杪","杳","枘","梘","杵","棖","樅","梟","枋","杷","杼","柰","櫛","柘"
            ,"櫳","柩","枰","櫨","柙","枵","柚","枳","柝","梔","柃","枸","柢","櫟","柁","檉"
            ,"栲","栳","椏","橈","桎","楨","桄","榿","梃","栝","桕","樺","桁","檜","桀","欒"
            ,"桊","桉","栩","梵","梏","桴","桷","梓","桫","櫺","楮","棼","櫝","槧","棹"
            ,"欏","棰","椋","槨","楗","棣","椐","楱","椹","楠","楂","楝","欖","楫","榀"
            ,"榘","楸","椴","槌","櫬","櫚","槎","櫸","楦","楣","楹","榛","榧","榻","榫","榭"
            ,"槔","榱","槁","槊","檳","榕","櫧","榍","槿","檣","槭","樗","樘","櫫","槲","橄"
            ,"樾","檠","橐","橛","樵","檎","櫓","樽","樨","橘","櫞","檑","檐","檁","檗","檫"
            ,"猷","獒","歿","殂","殤","殄","殞","殮","殍","殫","殛","殯","殪","軔","軛","軲"
            ,"軻","轤","軹","軼","軫","軤","轢","軺","軾","輊","輇","輅","輒","輦","輞"
            ,"輟","輜","輳","轆","轔","軎","戔","戧","戛","戟","戢","戡","戥","戤","戩"
            ,"臧","甌","瓴","瓿","甏","甑","甓","攴","旮","旯","旰","昊","曇","杲","昃","昕"
            ,"昀","炅","曷","昝","昴","昱","昶","暱","耆","晟","曄","晁","晏","暉","晡","晗"
            ,"晷","暄","暌","曖","暝","暾","曛","曜","曦","曩","賁","貰","貺","貽","贄","貲"
            ,"賅","贐","賑","賚","賕","齎","賧","賻","覘","覬","覡","覿","覦","覯","覲","覷"
            ,"牮","犟","牝","犛","牯","牾","牿","犄","犋","犍","犏","犒","挈","挲","掰"
            ,"搿","擘","耄","毪","毳","毽","毿","毹","氅","氌","氆","氍","氕","氘","氙"
            ,"氚","氡","氬","氤","氪","氳","攵","敕","敫","牘","牒","牖","爰","虢","刖","肟"
            ,"肜","肓","肼","朊","肽","肱","肫","肭","餚","肷","朧","腖","胩","臚","胛","胂"
            ,"胄","胙","胍","胗","朐","胝","脛","胱","胴","胭","膾","脎","胲","胼","朕","脒"
            ,"豚","腡","脞","脬","脘","脲","腈","醃","腓","腴","腙","腚","腱","腠","腩","靦"
            ,"膃","齶","腧","塍","媵","膈","膂","臏","滕","膣","膪","臌","朦","臊","羶"
            ,"臁","膦","歟","欷","欹","歃","歆","歙","颮","颯","颶","颼","飆","飈","殳"
            ,"彀","轂","觳","斐","齏","斕","於","旆","旄","旃","旌","旎","旒","旖","煬","煒"
            ,"燉","熗","炻","烀","炷","炫","炱","燁","烊","焐","焓","燜","焯","焱","煳","煜"
            ,"煨","煅","煲","煊","煸","煺","熘","熳","熵","熨","熠","燠","燔","燧","燹","爝"
            ,"爨","灬","燾","煦","熹","戾","戽","扃","扈","扉","礻","祀","祆","祉","祛","祜"
            ,"祓","祚","禰","祗","祠","禎","祧","祺","禪","禊","禚","禧","禳","忑","忐"
            ,"懟","恝","恚","恧","恁","恙","恣","愨","愆","愍","慝","憩","憝","懋","懣"
            ,"戇","肀","聿","沓","澩","淼","磯","矸","碭","砉","硨","砘","砑","斫","砭","碸"
            ,"砝","砹","礪","礱","砟","砼","砥","砬","砣","砩","硎","硭","硤","磽","砦","硐"
            ,"硇","硌","硪","磧","碓","碚","碇","磣","碡","碣","碲","碹","碥","磔","磙","磉"
            ,"磬","磲","礅","磴","礓","礤","礞","礴","龕","黹","黻","黼","盱","眄","瞘","盹"
            ,"眇","眈","眚","眢","眙","眭","眥","眵","眸","睞","瞼","睇","睃","睚","睨"
            ,"睢","睥","睿","瞍","睽","瞀","瞌","瞑","瞟","瞠","瞰","瞵","瞽","町","畀"
            ,"畎","畋","畈","畛","畲","畹","疃","罘","罡","罟","詈","罨","羆","罱","罹","羈"
            ,"罾","盍","盥","蠲","釒","釓","釔","釙","釗","釕","釷","釧","釤","鍆","釵","釹"
            ,"鈈","鈦","鉅","鈑","鈐","鈁","鈧","鈄","鈥","鈀","鈺","鉦","鈷","鈳","鉕","鈽"
            ,"鈸","鉞","鉬","鉭","鈿","鑠","鈰","鉉","鉈","鉍","鈮","鈹","鐸","銬","銠","鉺"
            ,"銪","鋮","鋏","鐃","鋣","鐺","銱","銦","鎧","銖","鋌","銩","鏵","銓","鉿"
            ,"鎩","銚","錚","銫","銃","鐋","銨","銣","鐒","錸","鋱","鏗","鋥","鋰","鋯"
            ,"鋨","銼","鋝","鋶","鐦","鐗","鋃","鋟","鋦","錒","錆","鍩","錛","鍀","錁","錕"
            ,"錮","鍃","錇","錈","錟","錙","鍥","鍇","鍶","鍔","鍤","鎪","鍰","鎄","鏤","鏘"
            ,"鐨","鎇","鏌","鎘","鐫","鎿","鎦","鎰","鎵","鑌","鏢","鏜","鏝","鏍","鏞","鏃"
            ,"鏇","鏑","鐔","钁","鏷","鑥","鐓","鑭","鐠","鑹","鏹","鐙","鑊","鐲","鐿","鑔"
            ,"鑣","鍾","矧","矬","雉","秕","秭","秣","秫","穭","嵇","稃","稂","稞","稔"
            ,"稹","稷","穡","黏","馥","穰","皈","皎","皓","皙","皤","瓞","瓠","甬","鳩"
            ,"鳶","鴇","鴆","鴣","鶇","鸕","鴝","鴟","鷥","鴯","鷙","鴰","鵂","鸞","鵓","鸝"
            ,"鵠","鵒","鷳","鵜","鵡","鶓","鵪","鵯","鶉","鶘","鶚","鶿","鶥","鶩","鷂","鶼"
            ,"鸚","鷓","鷚","鷯","鷦","鷲","鷸","鸌","鷺","鸛","疒","疔","癤","癘","疝","癧"
            ,"疣","疳","痾","疸","痄","皰","疰","痃","痂","瘂","痍","痣","癆","痦","痤","癇"
            ,"痧","瘃","痱","痼","痿","瘐","瘀","癉","瘌","瘞","瘊","瘥","瘻","瘕","瘙"
            ,"瘛","瘼","瘢","瘠","癀","瘭","瘰","癭","瘵","癃","癮","瘳","癍","癩","癔"
            ,"癜","癖","癲","癯","翊","竦","穸","穹","窀","窆","窈","窕","竇","窠","窬","窨"
            ,"窶","窳","衤","衩","衲","衽","衿","袂","袢","襠","袷","袼","裉","褳","裎","襝"
            ,"襉","裱","褚","裼","裨","裾","裰","褡","褙","褓","褸","褊","襤","褫","褶","襁"
            ,"襦","襻","疋","胥","皸","皴","矜","耒","耔","耖","耜","耠","耮","耥","耦","耬"
            ,"耩","耨","耱","耋","耵","聃","聆","聹","聒","聵","聱","覃","頇","頎","頏"
            ,"頡","頜","潁","頦","頷","顎","顓","顳","顢","顙","顥","顬","顰","虍","虔"
            ,"虯","蟣","蠆","虺","虼","虻","蚨","蚍","蚋","蜆","蠔","蚧","蚣","蚪","蚓","蚩"
            ,"蚶","蛄","蚵","蠣","蚰","蚺","蚱","蚯","蛉","蟶","蚴","蛩","蛺","蟯","蛭","螄"
            ,"蛐","蜓","蛞","蠐","蛟","蛘","蛑","蜃","蜇","蛸","蜈","蜊","蜍","蜉","蜣","蜻"
            ,"蜞","蜥","蜮","蜚","蜾","蟈","蜴","蜱","蜩","蜷","蜿","螂","蜢","蝽","蠑","蝻"
            ,"蝠","蝰","蝌","蝮","螋","蝓","蝣","螻","蝤","蝙","蝥","螓","螯","蟎","蟒"
            ,"蟆","螈","螅","螭","螗","螃","螫","蟥","螬","螵","螳","蟋","蟓","螽","蟑"
            ,"蟀","蟊","蟛","蟪","蟠","蟮","蠖","蠓","蟾","蠊","蠛","蠡","蠹","蠼","缶","罌"
            ,"罄","罅","舐","竺","竽","笈","篤","笄","筧","笊","笫","笏","筇","笸","笪","笙"
            ,"笮","笱","笠","笥","笤","笳","籩","笞","筘","篳","筅","筵","筌","箏","筠","筮"
            ,"筻","筢","筲","筱","箐","簀","篋","箸","箬","箝","籜","箅","簞","箜","箢","簫"
            ,"箴","簣","篁","篌","篝","篚","篥","篦","篪","簌","篾","篼","簏","籪","簋"
            ,"簟","簪","簦","簸","籟","籀","臾","舁","舂","舄","臬","衄","舡","舢","艤"
            ,"舭","舯","舨","舫","舸","艫","舳","舴","舾","艄","艉","艋","艏","艚","艟","艨"
            ,"衾","嫋","袈","裘","裟","襞","羝","羥","羧","羯","羰","羲","秈","敉","粑","糲"
            ,"糶","粞","粢","粲","粼","糉","糝","餱","糌","餈","糈","糅","糗","糨","艮","暨"
            ,"羿","翎","翕","翥","翡","翦","翩","翮","翳","糸","縶","綦","綮","繇","纛","麩"
            ,"麴","赳","趄","趔","趑","趲","赧","赭","豇","豉","酊","酐","酎","酏","酤"
            ,"酢","酡","酰","酩","酯","釅","釃","酲","酴","酹","醌","醅","醐","醍","醑"
            ,"醢","醣","醪","醭","醮","醯","醵","醴","醺","豕","鹺","躉","跫","踅","蹙","蹩"
            ,"趵","趿","趼","趺","蹌","跖","跗","跚","躒","跎","跏","跛","跆","跬","蹺","蹕"
            ,"跣","躚","躋","跤","踉","跽","踔","踝","踟","躓","踮","踣","躑","踺","蹀","踹"
            ,"踵","踽","踱","蹉","蹁","蹂","躡","蹣","蹊","躕","蹶","蹼","蹯","蹴","躅","躪"
            ,"躔","躐","躦","躞","豸","貂","貊","貅","貘","貔","斛","觖","觴","觚","觜"
            ,"觥","觫","觶","訾","謦","靚","雩","靂","雯","霆","霽","霈","霏","霎","霪"
            ,"靄","霰","霾","齔","齟","齙","齠","齜","齦","齬","齪","齷","黽","黿","鼉","隹"
            ,"隼","雋","雎","雒","瞿","讎","銎","鑾","鋈","鏨","鍪","鏊","鎏","鐾","鑫","魷"
            ,"魴","鮁","鮃","鮎","鱸","穌","鮒","鱟","鮐","鮭","鮚","鮪","鮞","鱭","鮫","鯗"
            ,"鱘","鯁","鱺","鰱","鰹","鰣","鰷","鯀","鯊","鯇","鯽","鯖","鯪","鯫","鯡","鯤"
            ,"鯧","鯝","鯢","鮎","鯛","鯴","鯔","鱝","鰈","鱷","鰍","鰒","鰉","鯿","鰠"
            ,"鰲","鰭","鰨","鰥","鰩","鰳","鰾","鱈","鰻","鰵","鱅","鱖","鱔","鱒","鱧"
            ,"靼","鞅","韃","鞽","鞔","韉","鞫","鞣","韝","鞴","骱","骰","骷","鶻","骶","骺"
            ,"骼","髁","髀","髏","髂","髖","髕","髑","魅","魃","魘","魎","魈","魍","魑","饗"
            ,"饜","餮","饕","饔","髟","髡","髦","髯","髫","髻","髭","髹","鬈","鬏","鬢","鬟"
            ,"鬣","麼","麾","縻","麂","麇","麈","麋","麒","鏖","麝","麟","黛","黜","黝","黠"
            ,"黟","黢","黷","黧","黥","黲","黯","鼢","鼬","鼯","鼴","鼷","鼽","鼾","齇"
        };

        /// <summary>
        /// 二級漢字對應拼音數組
        /// </summary>
        private static string[] otherPinYin = new string[]
           {                         
               "Chu","Ji","Wu","Gai","Nian","Sa","Pi","Gen","Cheng","Ge","Nao","E","Shu","Yu","Pie","Bi",
                "Tuo","Yao","Yao","Zhi","Di","Xin","Yin","Kui","Yu","Gao","Tao","Dian","Ji","Nai","Nie","Ji",
                "Qi","Mi","Bei","Se","Gu","Ze","She","Cuo","Yan","Jue","Si","Ye","Yan","Fang","Po","Gui",
                "Kui","Bian","Ze","Gua","You","Ce","Yi","Wen","Jing","Ku","Gui","Kai","La","Ji","Yan","Wan",
                "Kuai","Piao","Jue","Qiao","Huo","Yi","Tong","Wang","Dan","Ding","Zhang","Le","Sa","Yi","Mu","Ren",
                "Yu","Pi","Ya","Wa","Wu","Chang","Cang","Kang","Zhu","Ning","Ka","You","Yi","Gou","Tong","Tuo",
                "Ni","Ga","Ji","Er","You","Kua","Kan","Zhu","Yi","Tiao","Chai","Jiao","Nong","Mou","Chou","Yan",
                "Li","Qiu","Li","Yu","Ping","Yong","Si","Feng","Qian","Ruo","Pai","Zhuo","Shu","Luo","Wo","Bi",
                "Ti","Guan","Kong","Ju","Fen","Yan","Xie","Ji","Wei","Zong","Lou","Tang","Bin","Nuo","Chi","Xi",
                "Jing","Jian","Jiao","Jiu","Tong","Xuan","Dan","Tong","Tun","She","Qian","Zu","Yue","Cuan","Di","Xi",
                "Xun","Hong","Guo","Chan","Kui","Bao","Pu","Hong","Fu","Fu","Su","Si","Wen","Yan","Bo","Gun",
                "Mao","Xie","Luan","Pou","Bing","Ying","Luo","Lei","Liang","Hu","Lie","Xian","Song","Ping","Zhong","Ming",
                "Yan","Jie","Hong","Shan","Ou","Ju","Ne","Gu","He","Di","Zhao","Qu","Dai","Kuang","Lei","Gua",
                "Jie","Hui","Shen","Gou","Quan","Zheng","Hun","Xu","Qiao","Gao","Kuang","Ei","Zou","Zhuo","Wei","Yu",
                "Shen","Chan","Sui","Chen","Jian","Xue","Ye","E","Yu","Xuan","An","Di","Zi","Pian","Mo","Dang",
                "Su","Shi","Mi","Zhe","Jian","Zen","Qiao","Jue","Yan","Zhan","Chen","Dan","Jin","Zuo","Wu","Qian",
                "Jing","Ban","Yan","Zuo","Bei","Jing","Gai","Zhi","Nie","Zou","Chui","Pi","Wei","Huang","Wei","Xi",
                "Han","Qiong","Kuang","Mang","Wu","Fang","Bing","Pi","Bei","Ye","Di","Tai","Jia","Zhi","Zhu","Kuai",
                "Qie","Xun","Yun","Li","Ying","Gao","Xi","Fu","Pi","Tan","Yan","Juan","Yan","Yin","Zhang","Po",
                "Shan","Zou","Ling","Feng","Chu","Huan","Mai","Qu","Shao","He","Ge","Meng","Xu","Xie","Sou","Xie",
                "Jue","Jian","Qian","Dang","Chang","Si","Bian","Ben","Qiu","Ben","E","Fa","Shu","Ji","Yong","He",
                "Wei","Wu","Ge","Zhen","Kuang","Pi","Yi","Li","Qi","Ban","Gan","Long","Dian","Lu","Che","Di",
                "Tuo","Ni","Mu","Ao","Ya","Die","Dong","Kai","Shan","Shang","Nao","Gai","Yin","Cheng","Shi","Guo",
                "Xun","Lie","Yuan","Zhi","An","Yi","Pi","Nian","Peng","Tu","Sao","Dai","Ku","Die","Yin","Leng",
                "Hou","Ge","Yuan","Man","Yong","Liang","Chi","Xin","Pi","Yi","Cao","Jiao","Nai","Du","Qian","Ji",
                "Wan","Xiong","Qi","Xiang","Fu","Yuan","Yun","Fei","Ji","Li","E","Ju","Pi","Zhi","Rui","Xian",
                "Chang","Cong","Qin","Wu","Qian","Qi","Shan","Bian","Zhu","Kou","Yi","Mo","Gan","Pie","Long","Ba",
                "Mu","Ju","Ran","Qing","Chi","Fu","Ling","Niao","Yin","Mao","Ying","Qiong","Min","Tiao","Qian","Yi",
                "Rao","Bi","Zi","Ju","Tong","Hui","Zhu","Ting","Qiao","Fu","Ren","Xing","Quan","Hui","Xun","Ming",
                "Qi","Jiao","Chong","Jiang","Luo","Ying","Qian","Gen","Jin","Mai","Sun","Hong","Zhou","Kan","Bi","Shi",
                "Wo","You","E","Mei","You","Li","Tu","Xian","Fu","Sui","You","Di","Shen","Guan","Lang","Ying",
                "Chun","Jing","Qi","Xi","Song","Jin","Nai","Qi","Ba","Shu","Chang","Tie","Yu","Huan","Bi","Fu",
                "Tu","Dan","Cui","Yan","Zu","Dang","Jian","Wan","Ying","Gu","Han","Qia","Feng","Shen","Xiang","Wei",
                "Chan","Kai","Qi","Kui","Xi","E","Bao","Pa","Ting","Lou","Pai","Xuan","Jia","Zhen","Shi","Ru",
                "Mo","En","Bei","Weng","Hao","Ji","Li","Bang","Jian","Shuo","Lang","Ying","Yu","Su","Meng","Dou",
                "Xi","Lian","Cu","Lin","Qu","Kou","Xu","Liao","Hui","Xun","Jue","Rui","Zui","Ji","Meng","Fan",
                "Qi","Hong","Xie","Hong","Wei","Yi","Weng","Sou","Bi","Hao","Tai","Ru","Xun","Xian","Gao","Li",
                "Huo","Qu","Heng","Fan","Nie","Mi","Gong","Yi","Kuang","Lian","Da","Yi","Xi","Zang","Pao","You",
                "Liao","Ga","Gan","Ti","Men","Tuan","Chen","Fu","Pin","Niu","Jie","Jiao","Za","Yi","Lv","Jun",
                "Tian","Ye","Ai","Na","Ji","Guo","Bai","Ju","Pou","Lie","Qian","Guan","Die","Zha","Ya","Qin",
                "Yu","An","Xuan","Bing","Kui","Yuan","Shu","En","Chuai","Jian","Shuo","Zhan","Nuo","Sang","Luo","Ying",
                "Zhi","Han","Zhe","Xie","Lu","Zun","Cuan","Gan","Huan","Pi","Xing","Zhuo","Huo","Zuan","Nang","Yi",
                "Te","Dai","Shi","Bu","Chi","Ji","Kou","Dao","Le","Zha","A","Yao","Fu","Mu","Yi","Tai",
                "Li","E","Bi","Bei","Guo","Qin","Yin","Za","Ka","Ga","Gua","Ling","Dong","Ning","Duo","Nao",
                "You","Si","Kuang","Ji","Shen","Hui","Da","Lie","Yi","Xiao","Bi","Ci","Guang","Yue","Xiu","Yi",
                "Pai","Kuai","Duo","Ji","Mie","Mi","Zha","Nong","Gen","Mou","Mai","Chi","Lao","Geng","En","Zha",
                "Suo","Zao","Xi","Zuo","Ji","Feng","Ze","Nuo","Miao","Lin","Zhuan","Zhou","Tao","Hu","Cui","Sha",
                "Yo","Dan","Bo","Ding","Lang","Li","Shua","Chuo","Die","Da","Nan","Li","Kui","Jie","Yong","Kui",
                "Jiu","Sou","Yin","Chi","Jie","Lou","Ku","Wo","Hui","Qin","Ao","Su","Du","Ke","Nie","He",
                "Chen","Suo","Ge","A","En","Hao","Dia","Ai","Ai","Suo","Hei","Tong","Chi","Pei","Lei","Cao",
                "Piao","Qi","Ying","Beng","Sou","Di","Mi","Peng","Jue","Liao","Pu","Chuai","Jiao","O","Qin","Lu",
                "Ceng","Deng","Hao","Jin","Jue","Yi","Sai","Pi","Ru","Cha","Huo","Nang","Wei","Jian","Nan","Lun",
                "Hu","Ling","You","Yu","Qing","Yu","Huan","Wei","Zhi","Pei","Tang","Dao","Ze","Guo","Wei","Wo",
                "Man","Zhang","Fu","Fan","Ji","Qi","Qian","Qi","Qu","Ya","Xian","Ao","Cen","Lan","Ba","Hu",
                "Ke","Dong","Jia","Xiu","Dai","Gou","Mao","Min","Yi","Dong","Qiao","Xun","Zheng","Lao","Lai","Song",
                "Yan","Gu","Xiao","Guo","Kong","Jue","Rong","Yao","Wai","Zai","Wei","Yu","Cuo","Lou","Zi","Mei",
                "Sheng","Song","Ji","Zhang","Lin","Deng","Bin","Yi","Dian","Chi","Pang","Cu","Xun","Yang","Hou","Lai",
                "Xi","Chang","Huang","Yao","Zheng","Jiao","Qu","San","Fan","Qiu","An","Guang","Ma","Niu","Yun","Xia",
                "Pao","Fei","Rong","Kuai","Shou","Sun","Bi","Juan","Li","Yu","Xian","Yin","Suan","Yi","Guo","Luo",
                "Ni","She","Cu","Mi","Hu","Cha","Wei","Wei","Mei","Nao","Zhang","Jing","Jue","Liao","Xie","Xun",
                "Huan","Chuan","Huo","Sun","Yin","Dong","Shi","Tang","Tun","Xi","Ren","Yu","Chi","Yi","Xiang","Bo",
                "Yu","Hun","Zha","Sou","Mo","Xiu","Jin","San","Zhuan","Nang","Pi","Wu","Gui","Pao","Xiu","Xiang",
                "Tuo","An","Yu","Bi","Geng","Ao","Jin","Chan","Xie","Lin","Ying","Shu","Dao","Cun","Chan","Wu",
                "Zhi","Ou","Chong","Wu","Kai","Chang","Chuang","Song","Bian","Niu","Hu","Chu","Peng","Da","Yang","Zuo",
                "Ni","Fu","Chao","Yi","Yi","Tong","Yan","Ce","Kai","Xun","Ke","Yun","Bei","Song","Qian","Kui",
                "Kun","Yi","Ti","Quan","Qie","Xing","Fei","Chang","Wang","Chou","Hu","Cui","Yun","Kui","E","Leng",
                "Zhui","Qiao","Bi","Su","Qie","Yong","Jing","Qiao","Chong","Chu","Lin","Meng","Tian","Hui","Shuan","Yan",
                "Wei","Hong","Min","Kang","Ta","Lv","Kun","Jiu","Lang","Yu","Chang","Xi","Wen","Hun","E","Qu",
                "Que","He","Tian","Que","Kan","Jiang","Pan","Qiang","San","Qi","Si","Cha","Feng","Yuan","Mu","Mian",
                "Dun","Mi","Gu","Bian","Wen","Hang","Wei","Le","Gan","Shu","Long","Lu","Yang","Si","Duo","Ling",
                "Mao","Luo","Xuan","Pan","Duo","Hong","Min","Jing","Huan","Wei","Lie","Jia","Zhen","Yin","Hui","Zhu",
                "Ji","Xu","Hui","Tao","Xun","Jiang","Liu","Hu","Xun","Ru","Su","Wu","Lai","Wei","Zhuo","Juan",
                "Cen","Bang","Xi","Mei","Huan","Zhu","Qi","Xi","Song","Du","Zhuo","Pei","Mian","Gan","Fei","Cong",
                "Shen","Guan","Lu","Shuan","Xie","Yan","Mian","Qiu","Sou","Huang","Xu","Pen","Jian","Xuan","Wo","Mei",
                "Yan","Qin","Ke","She","Mang","Ying","Pu","Li","Ru","Ta","Hun","Bi","Xiu","Fu","Tang","Pang",
                "Ming","Huang","Ying","Xiao","Lan","Cao","Hu","Luo","Huan","Lian","Zhu","Yi","Lu","Xuan","Gan","Shu",
                "Si","Shan","Shao","Tong","Chan","Lai","Sui","Li","Dan","Chan","Lian","Ru","Pu","Bi","Hao","Zhuo",
                "Han","Xie","Ying","Yue","Fen","Hao","Ba","Bao","Gui","Dang","Mi","You","Chen","Ning","Jian","Qian",
                "Wu","Liao","Qian","Huan","Jian","Jian","Zou","Ya","Wu","Jiong","Ze","Yi","Er","Jia","Jing","Dai",
                "Hou","Pang","Bu","Li","Qiu","Xiao","Ti","Qun","Kui","Wei","Huan","Lu","Chuan","Huang","Qiu","Xia",
                "Ao","Gou","Ta","Liu","Xian","Lin","Ju","Xie","Miao","Sui","La","Ji","Hui","Tuan","Zhi","Kao",
                "Zhi","Ji","E","Chan","Xi","Ju","Chan","Jing","Nu","Mi","Fu","Bi","Yu","Che","Shuo","Fei",
                "Yan","Wu","Yu","Bi","Jin","Zi","Gui","Niu","Yu","Si","Da","Zhou","Shan","Qie","Ya","Rao",
                "Shu","Luan","Jiao","Pin","Cha","Li","Ping","Wa","Xian","Suo","Di","Wei","E","Jing","Biao","Jie",
                "Chang","Bi","Chan","Nu","Ao","Yuan","Ting","Wu","Gou","Mo","Pi","Ai","Pin","Chi","Li","Yan",
                "Qiang","Piao","Chang","Lei","Zhang","Xi","Shan","Bi","Niao","Mo","Shuang","Ga","Ga","Fu","Nu","Zi",
                "Jie","Jue","Bao","Zang","Si","Fu","Zou","Yi","Nu","Dai","Xiao","Hua","Pian","Li","Qi","Ke",
                "Zhui","Can","Zhi","Wu","Ao","Liu","Shan","Biao","Cong","Chan","Ji","Xiang","Jiao","Yu","Zhou","Ge",
                "Wan","Kuang","Yun","Pi","Shu","Gan","Xie","Fu","Zhou","Fu","Chu","Dai","Ku","Hang","Jiang","Geng",
                "Xiao","Ti","Ling","Qi","Fei","Shang","Gun","Duo","Shou","Liu","Quan","Wan","Zi","Ke","Xiang","Ti",
                "Miao","Hui","Si","Bian","Gou","Zhui","Min","Jin","Zhen","Ru","Gao","Li","Yi","Jian","Bin","Piao",
                "Man","Lei","Miao","Sao","Xie","Liao","Zeng","Jiang","Qian","Qiao","Huan","Zuan","Yao","Ji","Chuan","Zai",
                "Yong","Ding","Ji","Wei","Bin","Min","Jue","Ke","Long","Dian","Dai","Po","Min","Jia","Er","Gong",
                "Xu","Ya","Heng","Yao","Luo","Xi","Hui","Lian","Qi","Ying","Qi","Hu","Kun","Yan","Cong","Wan",
                "Chen","Ju","Mao","Yu","Yuan","Xia","Nao","Ai","Tang","Jin","Huang","Ying","Cui","Cong","Xuan","Zhang",
                "Pu","Can","Qu","Lu","Bi","Zan","Wen","Wei","Yun","Tao","Wu","Shao","Qi","Cha","Ma","Li",
                "Pi","Miao","Yao","Rui","Jian","Chu","Cheng","Cong","Xiao","Fang","Pa","Zhu","Nai","Zhi","Zhe","Long",
                "Jiu","Ping","Lu","Xia","Xiao","You","Zhi","Tuo","Zhi","Ling","Gou","Di","Li","Tuo","Cheng","Kao",
                "Lao","Ya","Rao","Zhi","Zhen","Guang","Qi","Ting","Gua","Jiu","Hua","Heng","Gui","Jie","Luan","Juan",
                "An","Xu","Fan","Gu","Fu","Jue","Zi","Suo","Ling","Chu","Fen","Du","Qian","Zhao","Luo","Chui",
                "Liang","Guo","Jian","Di","Ju","Cou","Zhen","Nan","Zha","Lian","Lan","Ji","Pin","Ju","Qiu","Duan",
                "Chui","Chen","Lv","Cha","Ju","Xuan","Mei","Ying","Zhen","Fei","Ta","Sun","Xie","Gao","Cui","Gao",
                "Shuo","Bin","Rong","Zhu","Xie","Jin","Qiang","Qi","Chu","Tang","Zhu","Hu","Gan","Yue","Qing","Tuo",
                "Jue","Qiao","Qin","Lu","Zun","Xi","Ju","Yuan","Lei","Yan","Lin","Bo","Cha","You","Ao","Mo",
                "Cu","Shang","Tian","Yun","Lian","Piao","Dan","Ji","Bin","Yi","Ren","E","Gu","Ke","Lu","Zhi",
                "Yi","Zhen","Hu","Li","Yao","Shi","Zhi","Quan","Lu","Zhe","Nian","Wang","Chuo","Zi","Cou","Lu",
                "Lin","Wei","Jian","Qiang","Jia","Ji","Ji","Kan","Deng","Gai","Jian","Zang","Ou","Ling","Bu","Beng",
                "Zeng","Pi","Po","Ga","La","Gan","Hao","Tan","Gao","Ze","Xin","Yun","Gui","He","Zan","Mao",
                "Yu","Chang","Ni","Qi","Sheng","Ye","Chao","Yan","Hui","Bu","Han","Gui","Xuan","Kui","Ai","Ming",
                "Tun","Xun","Yao","Xi","Nang","Ben","Shi","Kuang","Yi","Zhi","Zi","Gai","Jin","Zhen","Lai","Qiu",
                "Ji","Dan","Fu","Chan","Ji","Xi","Di","Yu","Gou","Jin","Qu","Jian","Jiang","Pin","Mao","Gu",
                "Wu","Gu","Ji","Ju","Jian","Pian","Kao","Qie","Suo","Bai","Ge","Bo","Mao","Mu","Cui","Jian",
                "San","Shu","Chang","Lu","Pu","Qu","Pie","Dao","Xian","Chuan","Dong","Ya","Yin","Ke","Yun","Fan",
                "Chi","Jiao","Du","Die","You","Yuan","Guo","Yue","Wo","Rong","Huang","Jing","Ruan","Tai","Gong","Zhun",
                "Na","Yao","Qian","Long","Dong","Ka","Lu","Jia","Shen","Zhou","Zuo","Gua","Zhen","Qu","Zhi","Jing",
                "Guang","Dong","Yan","Kuai","Sa","Hai","Pian","Zhen","Mi","Tun","Luo","Cuo","Pao","Wan","Niao","Jing",
                "Yan","Fei","Yu","Zong","Ding","Jian","Cou","Nan","Mian","Wa","E","Shu","Cheng","Ying","Ge","Lv",
                "Bin","Teng","Zhi","Chuai","Gu","Meng","Sao","Shan","Lian","Lin","Yu","Xi","Qi","Sha","Xin","Xi",
                "Biao","Sa","Ju","Sou","Biao","Biao","Shu","Gou","Gu","Hu","Fei","Ji","Lan","Yu","Pei","Mao",
                "Zhan","Jing","Ni","Liu","Yi","Yang","Wei","Dun","Qiang","Shi","Hu","Zhu","Xuan","Tai","Ye","Yang",
                "Wu","Han","Men","Chao","Yan","Hu","Yu","Wei","Duan","Bao","Xuan","Bian","Tui","Liu","Man","Shang",
                "Yun","Yi","Yu","Fan","Sui","Xian","Jue","Cuan","Huo","Tao","Xu","Xi","Li","Hu","Jiong","Hu",
                "Fei","Shi","Si","Xian","Zhi","Qu","Hu","Fu","Zuo","Mi","Zhi","Ci","Zhen","Tiao","Qi","Chan",
                "Xi","Zhuo","Xi","Rang","Te","Tan","Dui","Jia","Hui","Nv","Nin","Yang","Zi","Que","Qian","Min",
                "Te","Qi","Dui","Mao","Men","Gang","Yu","Yu","Ta","Xue","Miao","Ji","Gan","Dang","Hua","Che",
                "Dun","Ya","Zhuo","Bian","Feng","Fa","Ai","Li","Long","Zha","Tong","Di","La","Tuo","Fu","Xing",
                "Mang","Xia","Qiao","Zhai","Dong","Nao","Ge","Wo","Qi","Dui","Bei","Ding","Chen","Zhou","Jie","Di",
                "Xuan","Bian","Zhe","Gun","Sang","Qing","Qu","Dun","Deng","Jiang","Ca","Meng","Bo","Kan","Zhi","Fu",
                "Fu","Xu","Mian","Kou","Dun","Miao","Dan","Sheng","Yuan","Yi","Sui","Zi","Chi","Mou","Lai","Jian",
                "Di","Suo","Ya","Ni","Sui","Pi","Rui","Sou","Kui","Mao","Ke","Ming","Piao","Cheng","Kan","Lin",
                "Gu","Ding","Bi","Quan","Tian","Fan","Zhen","She","Wan","Tuan","Fu","Gang","Gu","Li","Yan","Pi",
                "Lan","Li","Ji","Zeng","He","Guan","Juan","Jin","Ga","Yi","Po","Zhao","Liao","Tu","Chuan","Shan",
                "Men","Chai","Nv","Bu","Tai","Ju","Ban","Qian","Fang","Kang","Dou","Huo","Ba","Yu","Zheng","Gu",
                "Ke","Po","Bu","Bo","Yue","Mu","Tan","Dian","Shuo","Shi","Xuan","Ta","Bi","Ni","Pi","Duo",
                "Kao","Lao","Er","You","Cheng","Jia","Nao","Ye","Cheng","Diao","Yin","Kai","Zhu","Ding","Diu","Hua",
                "Quan","Ha","Sha","Diao","Zheng","Se","Chong","Tang","An","Ru","Lao","Lai","Te","Keng","Zeng","Li",
                "Gao","E","Cuo","Lve","Liu","Kai","Jian","Lang","Qin","Ju","A","Qiang","Nuo","Ben","De","Ke",
                "Kun","Gu","Huo","Pei","Juan","Tan","Zi","Qie","Kai","Si","E","Cha","Sou","Huan","Ai","Lou",
                "Qiang","Fei","Mei","Mo","Ge","Juan","Na","Liu","Yi","Jia","Bin","Biao","Tang","Man","Luo","Yong",
                "Chuo","Xuan","Di","Tan","Jue","Pu","Lu","Dui","Lan","Pu","Cuan","Qiang","Deng","Huo","Zhuo","Yi",
                "Cha","Biao","Zhong","Shen","Cuo","Zhi","Bi","Zi","Mo","Shu","Lv","Ji","Fu","Lang","Ke","Ren",
                "Zhen","Ji","Se","Nian","Fu","Rang","Gui","Jiao","Hao","Xi","Po","Die","Hu","Yong","Jiu","Yuan",
                "Bao","Zhen","Gu","Dong","Lu","Qu","Chi","Si","Er","Zhi","Gua","Xiu","Luan","Bo","Li","Hu",
                "Yu","Xian","Ti","Wu","Miao","An","Bei","Chun","Hu","E","Ci","Mei","Wu","Yao","Jian","Ying",
                "Zhe","Liu","Liao","Jiao","Jiu","Yu","Hu","Lu","Guan","Bing","Ding","Jie","Li","Shan","Li","You",
                "Gan","Ke","Da","Zha","Pao","Zhu","Xuan","Jia","Ya","Yi","Zhi","Lao","Wu","Cuo","Xian","Sha",
                "Zhu","Fei","Gu","Wei","Yu","Yu","Dan","La","Yi","Hou","Chai","Lou","Jia","Sao","Chi","Mo",
                "Ban","Ji","Huang","Biao","Luo","Ying","Zhai","Long","Yin","Chou","Ban","Lai","Yi","Dian","Pi","Dian",
                "Qu","Yi","Song","Xi","Qiong","Zhun","Bian","Yao","Tiao","Dou","Ke","Yu","Xun","Ju","Yu","Yi",
                "Cha","Na","Ren","Jin","Mei","Pan","Dang","Jia","Ge","Ken","Lian","Cheng","Lian","Jian","Biao","Chu",
                "Ti","Bi","Ju","Duo","Da","Bei","Bao","Lv","Bian","Lan","Chi","Zhe","Qiang","Ru","Pan","Ya",
                "Xu","Jun","Cun","Jin","Lei","Zi","Chao","Si","Huo","Lao","Tang","Ou","Lou","Jiang","Nou","Mo",
                "Die","Ding","Dan","Ling","Ning","Guo","Kui","Ao","Qin","Han","Qi","Hang","Jie","He","Ying","Ke",
                "Han","E","Zhuan","Nie","Man","Sang","Hao","Ru","Pin","Hu","Qian","Qiu","Ji","Chai","Hui","Ge",
                "Meng","Fu","Pi","Rui","Xian","Hao","Jie","Gong","Dou","Yin","Chi","Han","Gu","Ke","Li","You",
                "Ran","Zha","Qiu","Ling","Cheng","You","Qiong","Jia","Nao","Zhi","Si","Qu","Ting","Kuo","Qi","Jiao",
                "Yang","Mou","Shen","Zhe","Shao","Wu","Li","Chu","Fu","Qiang","Qing","Qi","Xi","Yu","Fei","Guo",
                "Guo","Yi","Pi","Tiao","Quan","Wan","Lang","Meng","Chun","Rong","Nan","Fu","Kui","Ke","Fu","Sou",
                "Yu","You","Lou","You","Bian","Mou","Qin","Ao","Man","Mang","Ma","Yuan","Xi","Chi","Tang","Pang",
                "Shi","Huang","Cao","Piao","Tang","Xi","Xiang","Zhong","Zhang","Shuai","Mao","Peng","Hui","Pan","Shan","Huo",
                "Meng","Chan","Lian","Mie","Li","Du","Qu","Fou","Ying","Qing","Xia","Shi","Zhu","Yu","Ji","Du",
                "Ji","Jian","Zhao","Zi","Hu","Qiong","Po","Da","Sheng","Ze","Gou","Li","Si","Tiao","Jia","Bian",
                "Chi","Kou","Bi","Xian","Yan","Quan","Zheng","Jun","Shi","Gang","Pa","Shao","Xiao","Qing","Ze","Qie",
                "Zhu","Ruo","Qian","Tuo","Bi","Dan","Kong","Wan","Xiao","Zhen","Kui","Huang","Hou","Gou","Fei","Li",
                "Bi","Chi","Su","Mie","Dou","Lu","Duan","Gui","Dian","Zan","Deng","Bo","Lai","Zhou","Yu","Yu",
                "Chong","Xi","Nie","Nv","Chuan","Shan","Yi","Bi","Zhong","Ban","Fang","Ge","Lu","Zhu","Ze","Xi",
                "Shao","Wei","Meng","Shou","Cao","Chong","Meng","Qin","Niao","Jia","Qiu","Sha","Bi","Di","Qiang","Suo",
                "Jie","Tang","Xi","Xian","Mi","Ba","Li","Tiao","Xi","Zi","Can","Lin","Zong","San","Hou","Zan",
                "Ci","Xu","Rou","Qiu","Jiang","Gen","Ji","Yi","Ling","Xi","Zhu","Fei","Jian","Pian","He","Yi",
                "Jiao","Zhi","Qi","Qi","Yao","Dao","Fu","Qu","Jiu","Ju","Lie","Zi","Zan","Nan","Zhe","Jiang",
                "Chi","Ding","Gan","Zhou","Yi","Gu","Zuo","Tuo","Xian","Ming","Zhi","Yan","Shai","Cheng","Tu","Lei",
                "Kun","Pei","Hu","Ti","Xu","Hai","Tang","Lao","Bu","Jiao","Xi","Ju","Li","Xun","Shi","Cuo",
                "Dun","Qiong","Xue","Cu","Bie","Bo","Ta","Jian","Fu","Qiang","Zhi","Fu","Shan","Li","Tuo","Jia",
                "Bo","Tai","Kui","Qiao","Bi","Xian","Xian","Ji","Jiao","Liang","Ji","Chuo","Huai","Chi","Zhi","Dian",
                "Bo","Zhi","Jian","Die","Chuai","Zhong","Ju","Duo","Cuo","Pian","Rou","Nie","Pan","Qi","Chu","Jue",
                "Pu","Fan","Cu","Zhu","Lin","Chan","Lie","Zuan","Xie","Zhi","Diao","Mo","Xiu","Mo","Pi","Hu",
                "Jue","Shang","Gu","Zi","Gong","Su","Zhi","Zi","Qing","Liang","Yu","Li","Wen","Ting","Ji","Pei",
                "Fei","Sha","Yin","Ai","Xian","Mai","Chen","Ju","Bao","Tiao","Zi","Yin","Yu","Chuo","Wo","Mian",
                "Yuan","Tuo","Zhui","Sun","Jun","Ju","Luo","Qu","Chou","Qiong","Luan","Wu","Zan","Mou","Ao","Liu",
                "Bei","Xin","You","Fang","Ba","Ping","Nian","Lu","Su","Fu","Hou","Tai","Gui","Jie","Wei","Er",
                "Ji","Jiao","Xiang","Xun","Geng","Li","Lian","Jian","Shi","Tiao","Gun","Sha","Huan","Ji","Qing","Ling",
                "Zou","Fei","Kun","Chang","Gu","Ni","Nian","Diao","Shi","Zi","Fen","Die","E","Qiu","Fu","Huang",
                "Bian","Sao","Ao","Qi","Ta","Guan","Yao","Le","Biao","Xue","Man","Min","Yong","Gui","Shan","Zun",
                "Li","Da","Yang","Da","Qiao","Man","Jian","Ju","Rou","Gou","Bei","Jie","Tou","Ku","Gu","Di",
                "Hou","Ge","Ke","Bi","Lou","Qia","Kuan","Bin","Du","Mei","Ba","Yan","Liang","Xiao","Wang","Chi",
                "Xiang","Yan","Tie","Tao","Yong","Biao","Kun","Mao","Ran","Tiao","Ji","Zi","Xiu","Quan","Jiu","Bin",
                "Huan","Lie","Me","Hui","Mi","Ji","Jun","Zhu","Mi","Qi","Ao","She","Lin","Dai","Chu","You",
                "Xia","Yi","Qu","Du","Li","Qing","Can","An","Fen","You","Wu","Yan","Xi","Qiu","Han","Zha"
           };
        #endregion 二級漢字
        #region 變量定義
        // GB2312-80 標準規範中第一個漢字的機內碼.即"啊"的機內碼
        private const int firstChCode = -20319;
        // GB2312-80 標準規範中最後一個漢字的機內碼.即"齇"的機內碼
        private const int lastChCode = -2050;
        // GB2312-80 標準規範中最後一個一級漢字的機內碼.即"座"的機內碼
        private const int lastOfOneLevelChCode = -10247;
        // 配置中文字符
        //static Regex regex = new Regex("[\u4e00-\u9fa5]$");

        #endregion
        #endregion

        /// <summary>
        /// 取拼音第一個字段
        /// </summary>        
        /// <param name="ch"></param>        
        /// <returns></returns>        
        public static String GetFirst(Char ch)
        {
            var rs = Get(ch);
            if (!String.IsNullOrEmpty(rs)) rs = rs.Substring(0, 1);

            return rs;
        }

        /// <summary>
        /// 取拼音第一個字段
        /// </summary>
        /// <param name="str"></param>
        /// <returns></returns>
        public static String GetFirst(String str)
        {
            if (String.IsNullOrEmpty(str)) return String.Empty;

            var sb = new StringBuilder(str.Length + 1);
            var chs = str.ToCharArray();

            for (var i = 0; i < chs.Length; i++)
            {
                sb.Append(GetFirst(chs[i]));
            }

            return sb.ToString();
        }

        /// <summary>
        /// 獲取單字拼音
        /// </summary>
        /// <param name="ch"></param>
        /// <returns></returns>
        public static String Get(Char ch)
        {
            // 拉丁字符            
            if (ch <= '\x00FF') return ch.ToString();

            // 標點符號、分隔符            
            if (Char.IsPunctuation(ch) || Char.IsSeparator(ch)) return ch.ToString();

            // 非中文字符            
            if (ch < '\x4E00' || ch > '\x9FA5') return ch.ToString();

            var arr = Encoding.GetEncoding("gb2312").GetBytes(ch.ToString());
            //Encoding.Default默認在中文環境裏雖是GB2312,但在多變的環境可能是其它
            //var arr = Encoding.Default.GetBytes(ch.ToString()); 
            var chr = (Int16)arr[0] * 256 + (Int16)arr[1] - 65536;

            //***// 單字符--英文或半角字符  
            if (chr > 0 && chr < 160) return ch.ToString();
            #region 中文字符處理

            // 判斷是否超過GB2312-80標準中的漢字範圍
            if (chr > lastChCode || chr < firstChCode)
            {
                return ch.ToString(); ;
            }
            // 如果是在一級漢字中
            else if (chr <= lastOfOneLevelChCode)
            {
                // 將一級漢字分爲12塊,每塊33個漢字.
                for (int aPos = 11; aPos >= 0; aPos--)
                {
                    int aboutPos = aPos * 33;
                    // 從最後的塊開始掃描,如果機內碼大於塊的第一個機內碼,說明在此塊中
                    if (chr >= pyValue[aboutPos])
                    {
                        // Console.WriteLine("存在於第 " + aPos.ToString() + " 塊,此塊的第一個機內碼是: " + pyValue[aPos * 33].ToString());
                        // 遍歷塊中的每個音節機內碼,從最後的音節機內碼開始掃描,
                        // 如果音節內碼小於機內碼,則取此音節
                        for (int i = aboutPos + 32; i >= aboutPos; i--)
                        {
                            if (pyValue[i] <= chr)
                            {
                                // Console.WriteLine("找到第一個小於要查找機內碼的機內碼: " + pyValue[i].ToString());
                                return pyName[i];
                            }
                        }
                        break;
                    }
                }
            }
            // 如果是在二級漢字中
            else
            {
                int pos = Array.IndexOf(otherChinese, ch.ToString());
                if (pos != decimal.MinusOne)
                {
                    return otherPinYin[pos];
                }
            }

            #endregion 中文字符處理

            //if (chr < -20319 || chr > -10247) { // 不知道的字符  
            //    return null;  
            //for (var i = pyValue.Length - 1; i >= 0; i--)
            //{                
            //    if (pyValue[i] <= chr) return pyName[i];//這隻能對應數組已經定義的           
            //}             

            return String.Empty;
        }

        /// <summary>
        /// 把漢字轉換成拼音(全拼)
        /// </summary>
        /// <param name="str">漢字字符串</param>
        /// <returns>轉換後的拼音(全拼)字符串</returns>
        public static String Get(String str)
        {
            if (String.IsNullOrEmpty(str)) return String.Empty;

            var sb = new StringBuilder(str.Length * 10);
            var chs = str.ToCharArray();

            for (var j = 0; j < chs.Length; j++)
            {
                sb.Append(Get(chs[j]));
            }

            return sb.ToString();
        }
    }
}



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章