关于C++对汉字拼音的处理

直到目前我没有找到比较合适的输入汉字输出拼音的函数,那么根据网上流传的几个源码进行了改编,写成了输入汉字输出拼音的函数。对于此函数不能说强大,但是至少稳定可用,输出结果还没有发现什么错误。

 

那么下面我将直接copy代码到这里,共广大网友参考把。

 

类定义:

 1 class HanziToPinyin
 2 {
 3 public:
 4     ~HanziToPinyin(void);
 5 
 6     static HanziToPinyin* MakeSingleObj();
 7 
 8     //////////////////////////////////////////////////////////////////////////
 9 
10     std::string hanzi_trans_to_pinyin(const std::string &strHanzi);//获取中文字符串的全拼音
11     std::string get_pinyin_by_code(int nCode);//获取指定编码的汉字拼音
12     std::string get_first_pinyin_string(const std::wstring &wstrHanzi);//获取指定字符串(汉字)的首拼音串
13     std::wstring get_first_pinyin_stringw(const std::wstring &wstrHanzi);//获取指定字符串(汉字)的首拼音串
14 
15     bool get_hanzi_code(const char *pChineseCharacter, char *pGBK, const size_t nChineseCharacter = 3, const size_t nGBK = 5);//获取指定单个汉字GBK编码,pChineseCharacter以"\0"结束
16     char get_first_character(const char *pGBK, const size_t nGBK = 5);//返回指定单个汉字的首字母
17 
18 
19 private:
20     HanziToPinyin(void);
21 
22 };

 

类实现:

   1 std::string HanziToPinyin::get_pinyin_by_code(int nCode)
   2 {
   3     std::string strPinyin;
   4     switch(nCode)
   5     {
   6     case 6325:
   7     case 6436:
   8     case 7571:
   9     case 7925:
  10         strPinyin="A";
  11         break;
  12     case 6263:
  13     case 6440:
  14     case 7040:
  15     case 7208:
  16     case 7451:
  17     case 7733:
  18     case 7945:
  19     case 8616:
  20         strPinyin="AI";
  21         break;
  22     case 5847:
  23     case 5991:
  24     case 6278:
  25     case 6577:
  26     case 6654:
  27     case 7281:
  28     case 7907:
  29     case 8038:
  30     case 8786:
  31         strPinyin="AN";
  32         break;
  33         strPinyin="ANG";
  34         break;
  35     case 5974:
  36     case 6254:
  37     case 6427:
  38     case 6514:
  39     case 6658:
  40     case 6959:
  41     case 7033:
  42     case 7081:
  43     case 7365:
  44     case 8190:
  45     case 8292:
  46     case 8643:
  47     case 8701:
  48     case 8773:
  49         strPinyin="AO";
  50         break;
  51     case 6056:
  52     case 6135:
  53     case 6517:
  54     case 7857:
  55     case 8446:
  56     case 8649:
  57     case 8741:
  58         strPinyin="BA";
  59         break;
  60     case 6267:
  61     case 6334:
  62     case 7494:
  63         strPinyin="BAI";
  64         break;
  65     case 5870:
  66     case 5964:
  67     case 7851:
  68     case 8103:
  69     case 8113:
  70     case 8418:
  71         strPinyin="BAN";
  72         break;
  73     case 6182:
  74     case 6826:
  75         strPinyin="BANG";
  76         break;
  77     case 6165:
  78     case 7063:
  79     case 7650:
  80     case 8017:
  81     case 8157:
  82     case 8532:
  83     case 8621:
  84         strPinyin="BAO";
  85         break;
  86     case 5635:
  87     case 5873:
  88     case 5893:
  89     case 5993:
  90     case 6141:
  91     case 6703:
  92     case 7753:
  93     case 8039:
  94     case 8156:
  95     case 8645:
  96     case 8725:
  97         strPinyin="BEI";
  98         break;
  99     case 5946:
 100     case 5948:
 101     case 7458:
 102     case 7928:
 103         strPinyin="BEN";
 104         break;
 105     case 6452:
 106     case 7420:
 107         strPinyin="BENG";
 108         break;
 109     case 5616:
 110     case 5734:
 111     case 6074:
 112     case 6109:
 113     case 6221:
 114     case 6333:
 115     case 6357:
 116     case 6589:
 117     case 6656:
 118     case 6725:
 119     case 6868:
 120     case 6908:
 121     case 6986:
 122     case 6994:
 123     case 7030:
 124     case 7052:
 125     case 7221:
 126     case 7815:
 127     case 7873:
 128     case 7985:
 129     case 8152:
 130     case 8357:
 131     case 8375:
 132     case 8387:
 133     case 8416:
 134     case 8437:
 135     case 8547:
 136     case 8734:
 137         strPinyin="BI";
 138         break;
 139     case 5650:
 140     case 5945:
 141     case 6048:
 142     case 6677:
 143     case 6774:
 144     case 7134:
 145     case 7614:
 146     case 7652:
 147     case 7730:
 148     case 7760:
 149     case 8125:
 150     case 8159:
 151     case 8289:
 152     case 8354:
 153     case 8693:
 154         strPinyin="BIAN";
 155         break;
 156     case 7027:
 157     case 7084:
 158     case 7609:
 159     case 7613:
 160     case 7958:
 161     case 7980:
 162     case 8106:
 163     case 8149:
 164     case 8707:
 165     case 8752:
 166         strPinyin="BIAO";
 167         break;
 168     case 8531:
 169         strPinyin="BIE";
 170         break;
 171     case 5747:
 172     case 6557:
 173     case 7145:
 174     case 7167:
 175     case 7336:
 176     case 7375:
 177     case 7587:
 178     case 7957:
 179     case 8738:
 180     case 8762:
 181         strPinyin="BIN";
 182         break;
 183     case 5787:
 184     case 5891:
 185     case 6280:
 186         strPinyin="BING";
 187         break;
 188     case 5781:
 189     case 6403:
 190     case 6636:
 191     case 7362:
 192     case 7502:
 193     case 7771:
 194     case 7864:
 195     case 8030:
 196     case 8404:
 197     case 8543:
 198     case 8559:
 199         strPinyin="BO";
 200         break;
 201     case 6318:
 202     case 6945:
 203     case 7419:
 204     case 7446:
 205     case 7848:
 206     case 7863:
 207     case 8519:
 208         strPinyin="BU";
 209         break;
 210     case 6474:
 211     case 7769:
 212         strPinyin="CA";
 213         break;
 214         strPinyin="CAI";
 215         break;
 216     case 6978:
 217     case 7078:
 218     case 7218:
 219     case 8451:
 220     case 8785:
 221         strPinyin="CAN";
 222         break;
 223     case 5687:
 224         strPinyin="CANG";
 225         break;
 226     case 6448:
 227     case 6878:
 228     case 8309:
 229     case 8429:
 230         strPinyin="CAO";
 231         break;
 232     case 6692:
 233         strPinyin="CE";
 234         break;
 235     case 6515:
 236     case 6825:
 237         strPinyin="CEN";
 238         break;
 239     case 6465:
 240         strPinyin="CENG";
 241         break;
 242     case 6639:
 243     case 6766:
 244     case 7017:
 245     case 7230:
 246     case 7311:
 247     case 7322:
 248     case 7363:
 249     case 7942:
 250     case 7979:
 251     case 8135:
 252         strPinyin="CHA";
 253         break;
 254     case 5713:
 255     case 7846:
 256     case 8091:
 257     case 8218:
 258         strPinyin="CHAI";
 259         break;
 260     case 5770:
 261     case 5838:
 262     case 6159:
 263     case 6667:
 264     case 6893:
 265     case 6904:
 266     case 6981:
 267     case 7031:
 268     case 7086:
 269     case 7472:
 270     case 7688:
 271     case 7966:
 272     case 8324:
 273     case 8580:
 274         strPinyin="CHAN";
 275         break;
 276     case 5686:
 277     case 5943:
 278     case 6041:
 279     case 6137:
 280     case 6660:
 281     case 6568:
 282     case 6749:
 283     case 7029:
 284     case 7047:
 285     case 7438:
 286     case 7509:
 287     case 8680:
 288         strPinyin="CHANG";
 289         break;
 290     case 6687:
 291     case 7443:
 292     case 8173:
 293         strPinyin="CHAO";
 294         break;
 295     case 5969:
 296     case 7726:
 297         strPinyin="CHE";
 298         break;
 299     case 5840:
 300     case 5863:
 301     case 6251:
 302     case 6433:
 303     case 6923:
 304     case 7201:
 305     case 7320:
 306     case 7755:
 307     case 8619:
 308         strPinyin="CHEN";
 309         break;
 310     case 5609:
 311     case 5984:
 312     case 7239:
 313     case 7263:
 314     case 7583:
 315     case 7810:
 316     case 7881:
 317     case 7905:
 318     case 8146:
 319     case 8241:
 320     case 8508:
 321         strPinyin="CHENG";
 322         break;
 323     case 5749:
 324     case 6015:
 325     case 6061:
 326     case 6319:
 327     case 6374:
 328     case 6420:
 329     case 6445:
 330     case 6633:
 331     case 7042:
 332     case 7523:
 333     case 7787:
 334     case 8023:
 335     case 8101:
 336     case 8161:
 337     case 8231:
 338     case 8304:
 339     case 8355:
 340     case 8388:
 341     case 8489:
 342     case 8556:
 343     case 8746:
 344         strPinyin="CHI";
 345         break;
 346     case 6091:
 347     case 6671:
 348     case 6731:
 349     case 8409:
 350     case 8430:
 351         strPinyin="CHONG";
 352         break;
 353     case 5717:
 354     case 6492:
 355     case 6716:
 356     case 8112:
 357     case 8637:
 358         strPinyin="CHOU";
 359         break;
 360     case 5601:
 361     case 5927:
 362     case 6680:
 363     case 6732:
 364     case 7109:
 365     case 7238:
 366     case 7290:
 367     case 7343:
 368     case 8150:
 369     case 8260:
 370     case 8573:
 371     case 8777:
 372         strPinyin="CHU";
 373         break;
 374     case 6285:
 375     case 6408:
 376     case 7590:
 377     case 8563:
 378         strPinyin="CHUAI";
 379         break;
 380     case 6622:
 381     case 6955:
 382     case 7516:
 383     case 7843:
 384     case 8413:
 385         strPinyin="CHUAN";
 386         break;
 387     case 6675:
 388         strPinyin="CHUANG";
 389         break;
 390     case 5879:
 391     case 7302:
 392     case 7319:
 393         strPinyin="CHUI";
 394         break;
 395     case 6127:
 396     case 8040:
 397     case 8277:
 398         strPinyin="CHUN";
 399         break;
 400     case 7401:
 401     case 8554:
 402     case 8626:
 403         strPinyin="CHUO";
 404         break;
 405         strPinyin="CI";
 406         break;
 407     case 6075:
 408     case 6358:
 409     case 7684:
 410     case 8043:
 411     case 8457:
 412         strPinyin="4337 伺";
 413         break;
 414     case 6042:
 415     case 6840:
 416     case 7085:
 417     case 7193:
 418     case 7214:
 419     case 7240:
 420         strPinyin="CONG";
 421         break;
 422     case 7308:
 423     case 7403:
 424     case 7577:
 425         strPinyin="COU";
 426         break;
 427     case 6180:
 428     case 6562:
 429     case 6607:
 430     case 7367:
 431     case 8501:
 432     case 8530:
 433     case 8577:
 434         strPinyin="CU";
 435         break;
 436     case 5764:
 437     case 6305:
 438     case 7664:
 439     case 7973:
 440         strPinyin="CUAN";
 441         break;
 442     case 6718:
 443     case 6145:
 444     case 6393:
 445     case 7213:
 446     case 7333:
 447     case 7505:
 448     case 8631:
 449         strPinyin="CUI";
 450         break;
 451     case 6666:
 452     case 8169:
 453         strPinyin="CUN";
 454         break;
 455     case 5640:
 456     case 6547:
 457     case 7566:
 458     case 7917:
 459     case 7983:
 460     case 8078:
 461     case 8526:
 462     case 8567:
 463         strPinyin="CUO";
 464         break;
 465     case 6239:
 466     case 6353:
 467     case 6410:
 468     case 6682:
 469     case 7007:
 470     case 8155:
 471     case 8346:
 472     case 8716:
 473     case 8718:
 474         strPinyin="DA";
 475         break;
 476     case 6004:
 477     case 6316:
 478     case 6523:
 479     case 6942:
 480     case 7110:
 481     case 7173:
 482     case 8776:
 483         strPinyin="DAI";
 484         break;
 485     case 5757:
 486     case 6144:
 487     case 6402:
 488     case 7373:
 489     case 7470:
 490     case 7781:
 491     case 8067:
 492     case 8087:
 493     case 8185:
 494     case 8376:
 495         strPinyin="DAN";
 496         break;
 497     case 5852:
 498     case 5942:
 499     case 6148:
 500     case 6920:
 501     case 7724:
 502     case 7885:
 503     case 8141:
 504         strPinyin="DANG";
 505         break;
 506     case 6322:
 507     case 6665:
 508     case 7514:
 509     case 8478:
 510         strPinyin="DAO";
 511         break;
 512     case 7929:
 513         strPinyin="DE";
 514         break;
 515     case 6466:
 516     case 6556:
 517     case 7413:
 518     case 7767:
 519     case 7975:
 520     case 8403:
 521         strPinyin="DENG";
 522         break;
 523     case 5621:
 524     case 5765:
 525     case 5814:
 526     case 5848:
 527     case 5901:
 528     case 5970:
 529     case 6122:
 530     case 6454:
 531     case 7023:
 532     case 7116:
 533     case 7260:
 534     case 7306:
 535     case 7475:
 536     case 7738:
 537     case 7758:
 538     case 7791:
 539     case 7965:
 540     case 8438:
 541     case 8730:
 542         strPinyin="DI";
 543         break;
 544     case 6439:
 545         strPinyin="DIA";
 546         break;
 547     case 5871:
 548     case 5967:
 549     case 6559:
 550     case 7172:
 551     case 7868:
 552     case 8116:
 553     case 8118:
 554     case 8401:
 555     case 8558:
 556         strPinyin="DIAN";
 557         break;
 558     case 7886:
 559     case 8585:
 560     case 8684:
 561         strPinyin="DIAO";
 562         break;
 563     case 5976:
 564     case 6006:
 565     case 6273:
 566     case 6409:
 567     case 7526:
 568     case 8012:
 569     case 8183:
 570     case 8562:
 571     case 8688:
 572         strPinyin="DIE";
 573         break;
 574     case 5674:
 575     case 6404:
 576     case 7164:
 577     case 7575:
 578     case 7754:
 579     case 7814:
 580     case 8059:
 581     case 8184:
 582     case 8490:
 583         strPinyin="DING";
 584         break;
 585     case 7891:
 586         strPinyin="DIU";
 587         break;
 588     case 5977:
 589     case 6343:
 590     case 6520:
 591     case 6528:
 592     case 7517:
 593     case 7543:
 594     case 7556:
 595     case 7747:
 596     case 8020:
 597         strPinyin="DONG";
 598         break;
 599     case 6190:
 600     case 8128:
 601     case 8229:
 602     case 8391:
 603         strPinyin="DOU";
 604         break;
 605     case 6022:
 606     case 6429:
 607     case 6834:
 608     case 7292:
 609     case 7525:
 610     case 8328:
 611     case 8338:
 612     case 8739:
 613     case 8782:
 614         strPinyin="DU";
 615         break;
 616     case 7318:
 617     case 7649:
 618     case 8393:
 619         strPinyin="DUAN";
 620         break;
 621     case 7701:
 622     case 7713:
 623     case 7752:
 624         strPinyin="DUI";
 625         break;
 626     case 6771:
 627     case 7632:
 628     case 7727:
 629     case 7766:
 630     case 7779:
 631     case 7970:
 632     case 8527:
 633         strPinyin="DUN";
 634         break;
 635     case 6345:
 636     case 6365:
 637     case 6785:
 638     case 7122:
 639     case 7876:
 640     case 8154:
 641     case 8566:
 642         strPinyin="DUO";
 643         break;
 644     case 5612:
 645     case 5832:
 646     case 5844:
 647     case 5949:
 648     case 6035:
 649     case 6113:
 650     case 6164:
 651     case 6332:
 652     case 6721:
 653     case 6977:
 654     case 7025:
 655     case 7378:
 656     case 7581:
 657     case 7916:
 658     case 7941:
 659     case 8042:
 660     case 8206:
 661     case 8689:
 662         strPinyin="E";
 663         break;
 664     case 6176:
 665     case 6284:
 666         strPinyin="EN";
 667         break;
 668     case 5706:
 669     case 6939:
 670     case 7177:
 671     case 7879:
 672     case 8025:
 673     case 8660:
 674         strPinyin="ER";
 675         break;
 676     case 5950:
 677     case 7732:
 678         strPinyin="FA";
 679         break;
 680     case 6212:
 681     case 6232:
 682     case 6506:
 683     case 7283:
 684     case 7660:
 685     case 7818:
 686     case 8576:
 687         strPinyin="FAN";
 688         break;
 689     case 5890:
 690     case 7242:
 691     case 7853:
 692     case 8419:
 693     case 8648:
 694         strPinyin="FANG";
 695         break;
 696     case 6032:
 697     case 6584:
 698     case 6713:
 699     case 6839:
 700     case 6990:
 701     case 7119:
 702     case 7328:
 703     case 7572:
 704     case 7619:
 705     case 7673:
 706     case 7948:
 707     case 8082:
 708     case 8267:
 709     case 8385:
 710     case 8468:
 711     case 8613:
 712     case 8678:
 713         strPinyin="FEI";
 714         break;
 715     case 5739:
 716     case 6915:
 717     case 7291:
 718     case 8687:
 719     case 8787:
 720         strPinyin="FEN";
 721         break;
 722     case 5726:
 723     case 5926:
 724     case 6155:
 725     case 6384:
 726     case 6767:
 727     case 7731:
 728         strPinyin="FENG";
 729         break;
 730         strPinyin="FO";
 731         break;
 732     case 8330:
 733         strPinyin="FOU";
 734         break;
 735     case 5775:
 736     case 5776:
 737     case 5914:
 738     case 6029:
 739     case 6062:
 740     case 6119:
 741     case 6142:
 742     case 6252:
 743     case 6327:
 744     case 6505:
 745     case 6686:
 746     case 6870:
 747     case 6985:
 748     case 7058:
 749     case 7066:
 750     case 7106:
 751     case 7108:
 752     case 7285:
 753     case 7471:
 754     case 7680:
 755     case 7741:
 756     case 7774:
 757     case 7775:
 758     case 7823:
 759     case 7991:
 760     case 8005:
 761     case 8222:
 762     case 8261:
 763     case 8280:
 764     case 8283:
 765     case 8479:
 766     case 8535:
 767     case 8538:
 768     case 8654:
 769     case 8691:
 770         strPinyin="FU";
 771         break;
 772     case 6246:
 773     case 7056:
 774     case 7057:
 775     case 7424:
 776     case 7837:
 777         strPinyin=" GA";
 778         break;
 779     case 5604:
 780     case 5875:
 781     case 5982:
 782     case 7414:
 783     case 7464:
 784         strPinyin="GAI";
 785         break;
 786     case 5965:
 787     case 6053:
 788     case 6247:
 789     case 6306:
 790     case 6779:
 791     case 6838:
 792     case 6887:
 793     case 7104:
 794     case 7347:
 795     case 7426:
 796     case 7723:
 797     case 8065:
 798     case 8491:
 799         strPinyin="GAN";
 800         break;
 801     case 7716:
 802     case 7824:
 803     case 8364:
 804         strPinyin="GANG";
 805         break;
 806     case 5626:
 807     case 5830:
 808     case 5912:
 809     case 6227:
 810     case 7141:
 811     case 7332:
 812     case 7334:
 813     case 7429:
 814     case 7915:
 815         strPinyin="GAO";
 816         break;
 817     case 5610:
 818     case 5678:
 819     case 5933:
 820     case 5957:
 821     case 6010:
 822     case 6435:
 823     case 7092:
 824     case 7501:
 825     case 7585:
 826     case 7749:
 827     case 7951:
 828     case 8143:
 829     case 8220:
 830     case 8420:
 831     case 8732:
 832         strPinyin="GE";
 833         break;
 834         strPinyin="GEI";
 835         break;
 836     case 5608:
 837     case 6102:
 838     case 6371:
 839     case 8462:
 840         strPinyin="GEN";
 841         break;
 842     case 6376:
 843     case 6657:
 844     case 7114:
 845     case 8665:
 846         strPinyin="GENG";
 847         break;
 848     case 7178:
 849     case 7537:
 850     case 8228:
 851     case 8601:
 852         strPinyin="GONG";
 853         break;
 854     case 5694:
 855     case 5824:
 856     case 6524:
 857     case 6960:
 858     case 7037:
 859     case 7135:
 860     case 7259:
 861     case 7477:
 862     case 7616:
 863     case 8349:
 864     case 8384:
 865     case 8724:
 866         strPinyin="GOU";
 867         break;
 868     case 5637:
 869     case 5812:
 870     case 6152:
 871     case 6536:
 872     case 6773:
 873     case 7284:
 874     case 7379:
 875     case 7484:
 876     case 7486:
 877     case 7591:
 878     case 7617:
 879     case 7813:
 880     case 7825:
 881     case 7860:
 882     case 7932:
 883     case 8019:
 884     case 8083:
 885     case 8233:
 886     case 8494:
 887     case 8593:
 888     case 8681:
 889     case 8729:
 890         strPinyin="GU";
 891         break;
 892     case 5652:
 893     case 5820:
 894     case 6341:
 895     case 7273:
 896     case 7550:
 897     case 8027:
 898         strPinyin="GUA";
 899         break;
 900         strPinyin="GUAI";
 901         break;
 902     case 5736:
 903     case 6124:
 904     case 6272:
 905     case 6842:
 906     case 7834:
 907     case 8057:
 908     case 8170:
 909     case 8704:
 910         strPinyin="GUAN";
 911         break;
 912     case 6359:
 913     case 6578:
 914     case 7270:
 915     case 7555:
 916         strPinyin="GUANG";
 917         break;
 918     case 5648:
 919     case 5659:
 920     case 6649:
 921     case 7003:
 922     case 7277:
 923     case 7433:
 924     case 7448:
 925     case 8007:
 926     case 8394:
 927     case 8657:
 928     case 8712:
 929         strPinyin="GUI";
 930         break;
 931     case 5782:
 932     case 7121:
 933     case 7762:
 934     case 8671:
 935         strPinyin="GUN";
 936         break;
 937     case 5769:
 938     case 6266:
 939     case 6335:
 940     case 6494:
 941     case 6538:
 942     case 6603:
 943     case 7304:
 944     case 7529:
 945     case 8188:
 946     case 8268:
 947     case 8269:
 948         strPinyin="GUO";
 949         break;
 950     case 7894:
 951         strPinyin="HA";
 952         break;
 953     case 6443:
 954     case 7560:
 955     case 8516:
 956         strPinyin="HAI";
 957         break;
 958     case 5885:
 959     case 6153:
 960     case 6294:
 961     case 6759:
 962     case 6911:
 963     case 7447:
 964     case 7642:
 965     case 8192:
 966     case 8205:
 967     case 8232:
 968     case 8793:
 969         strPinyin="HAN";
 970         break;
 971     case 6776:
 972     case 7112:
 973     case 8194:
 974         strPinyin="HANG";
 975         break;
 976     case 6179:
 977     case 6222:
 978     case 6438:
 979     case 6467:
 980     case 6909:
 981     case 6916:
 982     case 7427:
 983     case 8009:
 984     case 8211:
 985     case 8226:
 986         strPinyin="HAO";
 987         break;
 988     case 5813:
 989     case 5932:
 990     case 5954:
 991     case 6432:
 992     case 6756:
 993     case 7434:
 994     case 7833:
 995     case 8202:
 996     case 8234:
 997     case 8471:
 998         strPinyin="HE";
 999         break;
1000         strPinyin="HEI";
1001         break;
1002         strPinyin="HEN";
1003         break;
1004     case 6231:
1005     case 7181:
1006     case 7276:
1007         strPinyin="HENG";
1008         break;
1009     case 5768:
1010     case 5774:
1011     case 5807:
1012     case 6106:
1013     case 6214:
1014     case 6216:
1015     case 6740:
1016     case 6792:
1017         strPinyin="HONG";
1018         break;
1019     case 6009:
1020     case 6565:
1021     case 6943:
1022     case 8090:
1023     case 8383:
1024     case 8455:
1025     case 8655:
1026     case 8731:
1027         strPinyin="HOU";
1028         break;
1029     case 5792:
1030     case 6392:
1031     case 6481:
1032     case 6518:
1033     case 6609:
1034     case 6679:
1035     case 6717:
1036     case 6816:
1037     case 6879:
1038     case 7190:
1039     case 7346:
1040     case 7385:
1041     case 7618:
1042     case 7635:
1043     case 7646:
1044     case 7670:
1045     case 7672:
1046     case 7679:
1047     case 8013:
1048     case 8032:
1049     case 8041:
1050     case 8055:
1051     case 8343:
1052     case 8513:
1053     case 8590:
1054         strPinyin="HU";
1055         break;
1056     case 7072:
1057     case 7275:
1058     case 7725:
1059     case 7892:
1060         strPinyin="HUA";
1061         break;
1062     case 8555:
1063         strPinyin="HUAI";
1064         break;
1065     case 5928:
1066     case 6140:
1067     case 6307:
1068     case 6487:
1069     case 6621:
1070     case 6801:
1071     case 6829:
1072     case 6881:
1073     case 6930:
1074     case 6953:
1075     case 7157:
1076     case 7944:
1077     case 8673:
1078     case 8763:
1079         strPinyin="HUAN";
1080         break;
1081     case 5882:
1082     case 6569:
1083     case 6850:
1084     case 6874:
1085     case 6956:
1086     case 7211:
1087     case 7533:
1088     case 8105:
1089     case 8308:
1090     case 8382:
1091     case 8692:
1092         strPinyin="HUANG";
1093         break;
1094     case 5822:
1095     case 6078:
1096     case 6086:
1097     case 6205:
1098     case 6352:
1099     case 6360:
1100     case 6425:
1101     case 6736:
1102     case 6807:
1103     case 6811:
1104     case 6971:
1105     case 7132:
1106     case 7185:
1107     case 7445:
1108     case 7703:
1109     case 8219:
1110     case 8319:
1111     case 8766:
1112         strPinyin="HUI";
1113         break;
1114     case 5827:
1115     case 6638:
1116     case 6752:
1117     case 6867:
1118         strPinyin="HUN";
1119         break;
1120     case 5669:
1121     case 6229:
1122     case 6311:
1123     case 6475:
1124     case 6623:
1125     case 7856:
1126     case 7933:
1127     case 7976:
1128     case 8175:
1129     case 8322:
1130         strPinyin="HUO";
1131         break;
1132     case 5629:
1133     case 5632:
1134     case 5662:
1135     case 5705:
1136     case 5742:
1137     case 5952:
1138     case 6024:
1139     case 6033:
1140     case 6193:
1141     case 6210:
1142     case 6265:
1143     case 6320:
1144     case 6350:
1145     case 6383:
1146     case 6507:
1147     case 6553:
1148     case 6809:
1149     case 6976:
1150     case 7087:
1151     case 7160:
1152     case 7165:
1153     case 7314:
1154     case 7374:
1155     case 7410:
1156     case 7411:
1157     case 7469:
1158     case 7473:
1159     case 7487:
1160     case 7620:
1161     case 7722:
1162     case 7831:
1163     case 7990:
1164     case 8002:
1165     case 8104:
1166     case 8217:
1167     case 8337:
1168     case 8339:
1169     case 8463:
1170     case 8550:
1171     case 8611:
1172     case 8661:
1173     case 8674:
1174     case 8757:
1175     case 8768:
1176         strPinyin="JI";
1177         break;
1178     case 5704:
1179     case 5903:
1180     case 6171:
1181     case 6521:
1182     case 6804:
1183     case 6940:
1184     case 7176:
1185     case 7409:
1186     case 7546:
1187     case 7702:
1188     case 7882:
1189     case 7956:
1190     case 8072:
1191     case 8142:
1192     case 8244:
1193     case 8353:
1194     case 8434:
1195     case 8542:
1196         strPinyin="JIA";
1197         break;
1198     case 5752:
1199     case 5841:
1200     case 5857:
1201     case 6149:
1202     case 6183:
1203     case 6286:
1204     case 6853:
1205     case 6931:
1206     case 6932:
1207     case 7144:
1208     case 7237:
1209     case 7305:
1210     case 7407:
1211     case 7415:
1212     case 7480:
1213     case 7489:
1214     case 7506:
1215     case 7576:
1216     case 7790:
1217     case 7921:
1218     case 8047:
1219     case 8148:
1220     case 8340:
1221     case 8469:
1222     case 8534:
1223     case 8561:
1224     case 8668:
1225     case 8721:
1226         strPinyin="JIAN";
1227         break;
1228     case 6092:
1229     case 6814:
1230     case 7113:
1231     case 7154:
1232     case 7481:
1233     case 7768:
1234     case 8180:
1235     case 8461:
1236     case 8488:
1237         strPinyin="JIANG";
1238         break;
1239     case 5714:
1240     case 5753:
1241     case 6020:
1242     case 6090:
1243     case 6256:
1244     case 6461:
1245     case 6572:
1246     case 7015:
1247     case 7524:
1248     case 8008:
1249     case 8052:
1250     case 8252:
1251     case 8520:
1252     case 8551:
1253     case 8662:
1254         strPinyin="JIAO";
1255         break;
1256     case 5806:
1257     case 5821:
1258     case 6255:
1259     case 6414:
1260     case 7028:
1261     case 7061:
1262     case 7278:
1263     case 7757:
1264     case 8060:
1265     case 8201:
1266     case 8227:
1267     case 8441:
1268     case 8658:
1269     case 8726:
1270         strPinyin="JIE";
1271         break;
1272     case 5865:
1273     case 6103:
1274     case 6132:
1275     case 6468:
1276     case 6643:
1277     case 6659:
1278     case 7138:
1279     case 7210:
1280     case 7340:
1281     case 7465:
1282     case 7478:
1283     case 8138:
1284         strPinyin="JIN";
1285         break;
1286     case 5751:
1287     case 5869:
1288     case 6128:
1289     case 6616:
1290     case 6729:
1291     case 6794:
1292     case 6941:
1293     case 6982:
1294     case 7026:
1295     case 7534:
1296     case 7554:
1297     case 7570:
1298     case 7626:
1299         strPinyin="JIANG";
1300         break;
1301     case 6936:
1302     case 7671:
1303         strPinyin="JIONG";
1304         break;
1305     case 5754:
1306     case 6417:
1307     case 6746:
1308     case 7249:
1309     case 7274:
1310     case 8015:
1311     case 8053:
1312     case 8481:
1313     case 8761:
1314         strPinyin="JIU";
1315         break;
1316     case 5738:
1317     case 5810:
1318     case 6036:
1319     case 6058:
1320     case 6076:
1321     case 6268:
1322     case 6965:
1323     case 6980:
1324     case 7202:
1325     case 7307:
1326     case 7316:
1327     case 7323:
1328     case 7357:
1329     case 7381:
1330     case 7488:
1331     case 7611:
1332     case 7850:
1333     case 7924:
1334     case 8022:
1335     case 8132:
1336     case 8153:
1337     case 8482:
1338     case 8522:
1339     case 8565:
1340     case 8620:
1341     case 8634:
1342     case 8722:
1343         strPinyin="JU";
1344         break;
1345     case 5918:
1346     case 6590:
1347     case 6824:
1348     case 7280:
1349     case 7835:
1350     case 7935:
1351     case 7952:
1352     case 8633:
1353         strPinyin="JUAN";
1354         break;
1355     case 5642:
1356     case 5667:
1357     case 5860:
1358     case 5939:
1359     case 6207:
1360     case 6421:
1361     case 6457:
1362     case 6469:
1363     case 6540:
1364     case 6617:
1365     case 7062:
1366     case 7169:
1367     case 7286:
1368     case 7351:
1369     case 7663:
1370     case 7967:
1371     case 8574:
1372     case 8591:
1373         strPinyin="JUE";
1374         break;
1375     case 6260:
1376     case 8168:
1377     case 8362:
1378     case 8769:
1379         strPinyin="JUN";
1380         break;
1381     case 5671:
1382     case 6339:
1383     case 7544:
1384         strPinyin="KA";
1385         break;
1386     case 5660:
1387     case 5978:
1388     case 6160:
1389     case 6673:
1390     case 6693:
1391     case 7888:
1392     case 7920:
1393     case 7939:
1394         strPinyin="KAI";
1395         break;
1396     case 5709:
1397     case 6108:
1398     case 7412:
1399     case 7772:
1400     case 7811:
1401         strPinyin="KAN";
1402         break;
1403     case 5688:
1404     case 6742:
1405     case 7854:
1406         strPinyin="KANG";
1407         break;
1408     case 6974:
1409     case 7264:
1410     case 7491:
1411     case 7877:
1412         strPinyin="KAO";
1413         break;
1414     case 6430:
1415     case 6519:
1416     case 6701:
1417     case 6859:
1418     case 7076:
1419     case 7128:
1420     case 7170:
1421     case 7380:
1422     case 7520:
1423     case 7807:
1424     case 7861:
1425     case 7930:
1426     case 7993:
1427     case 8066:
1428     case 8129:
1429     case 8204:
1430     case 8282:
1431     case 8733:
1432         strPinyin="KE";
1433         break;
1434     case 8144:
1435         strPinyin="KEN";
1436         break;
1437     case 7912:
1438         strPinyin="KENG";
1439         break;
1440     case 5737:
1441     case 6539:
1442     case 8377:
1443         strPinyin="KONG";
1444         break;
1445     case 6050:
1446     case 6202:
1447     case 6321:
1448     case 7778:
1449     case 8356:
1450         strPinyin="KOU";
1451         break;
1452     case 5658:
1453     case 6005:
1454     case 6423:
1455     case 7111:
1456     case 8728:
1457         strPinyin="KU";
1458         break;
1459     case 5708:
1460         strPinyin="KUA";
1461         break;
1462     case 5665:
1463     case 5906:
1464     case 6364:
1465     case 6586:
1466     case 7558:
1467         strPinyin="KUAI";
1468         break;
1469     case 8737:
1470         strPinyin="KUAN";
1471         break;
1472     case 5818:
1473     case 5831:
1474     case 5887:
1475     case 5959:
1476     case 6237:
1477     case 6349:
1478     case 7094:
1479     case 7460:
1480         strPinyin="KUANG";
1481         break;
1482     case 5624:
1483     case 5649:
1484     case 5771:
1485     case 6162:
1486     case 6281:
1487     case 6413:
1488     case 6416:
1489     case 6720:
1490     case 6951:
1491     case 7450:
1492     case 7805:
1493     case 8606:
1494     case 8743:
1495         strPinyin="KUI";
1496         break;
1497     case 6204:
1498     case 6245:
1499     case 6458:
1500     case 6618:
1501     case 6928:
1502     case 7152:
1503     case 7841:
1504     case 8051:
1505         strPinyin="LIAO";
1506         break;
1507     case 5793:
1508     case 5988:
1509     case 6270:
1510     case 6354:
1511     case 6803:
1512     case 8483:
1513     case 8581:
1514     case 8764:
1515         strPinyin="LIE";
1516         break;
1517     case 6194:
1518     case 6388:
1519     case 6555:
1520     case 6662:
1521     case 6733:
1522     case 6964:
1523     case 7361:
1524     case 7405:
1525     case 7602:
1526     case 7812:
1527     case 8452:
1528     case 8579:
1529     case 8775:
1530         strPinyin="LIN";
1531         break;
1532     case 5925:
1533     case 6063:
1534     case 6342:
1535     case 6482:
1536     case 6786:
1537     case 7117:
1538     case 7258:
1539     case 7289:
1540     case 7418:
1541     case 8186:
1542     case 8240:
1543     case 8465:
1544     case 8676:
1545         strPinyin="LING";
1546         break;
1547     case 6815:
1548     case 6962:
1549     case 7082:
1550     case 7124:
1551     case 7628:
1552     case 7654:
1553     case 7919:
1554     case 7954:
1555     case 8050:
1556     case 8644:
1557         strPinyin="LIU";
1558         break;
1559     case 5966:
1560     case 6055:
1561     case 6781:
1562     case 7171:
1563     case 7248:
1564     case 7542:
1565     case 7735:
1566     case 8110:
1567         strPinyin="LONG";
1568         break;
1569     case 5745:
1570     case 6168:
1571     case 6422:
1572     case 6548:
1573     case 7946:
1574     case 8092:
1575     case 8179:
1576     case 8287:
1577     case 8735:
1578         strPinyin="LOU";
1579         break;
1580     case 6744:
1581     case 7321:
1582     case 7586:
1583     case 7918:
1584     case 7989:
1585     case 8158:
1586         strPinyin="";
1587         break;
1588     case 5968:
1589     case 6303:
1590     case 6464:
1591     case 6782:
1592     case 6843:
1593     case 6885:
1594     case 6954:
1595     case 7220:
1596     case 7251:
1597     case 7354:
1598     case 7391:
1599     case 7404:
1600     case 7510:
1601     case 7545:
1602     case 7969:
1603     case 8021:
1604     case 8056:
1605     case 8392:
1606     case 8421:
1607     case 8652:
1608         strPinyin="LU";
1609         break;
1610     case 5785:
1611     case 7014:
1612     case 7279:
1613     case 8029:
1614     case 8639:
1615         strPinyin="LUAN";
1616         break;
1617         strPinyin="LǖE";
1618         break;
1619         strPinyin="LUN";
1620         break;
1621     case 5732:
1622     case 5789:
1623     case 6093:
1624     case 6259:
1625     case 6291:
1626     case 6604:
1627     case 6788:
1628     case 6880:
1629     case 7183:
1630     case 7301:
1631     case 7565:
1632     case 7961:
1633     case 8107:
1634     case 8635:
1635         strPinyin="LUO";
1636         break;
1637     case 6328:
1638         strPinyin="M";
1639         break;
1640     case 6373:
1641     case 6579:
1642     case 7054:
1643     case 7231:
1644     case 8301:
1645         strPinyin="MA";
1646         break;
1647     case 5929:
1648     case 6104:
1649     case 8618:
1650         strPinyin="MAI";
1651         break;
1652     case 6012:
1653     case 6503:
1654     case 7147:
1655     case 7655:
1656     case 7960:
1657     case 8209:
1658     case 8293:
1659     case 8709:
1660     case 8720:
1661         strPinyin="MAN";
1662         break;
1663     case 5888:
1664     case 6861:
1665     case 7743:
1666     case 8294:
1667         strPinyin="MANG";
1668         break;
1669     case 5783:
1670     case 6066:
1671     case 6525:
1672     case 6787:
1673     case 7203:
1674     case 7436:
1675     case 7483:
1676     case 7503:
1677     case 7624:
1678     case 7714:
1679     case 7806:
1680     case 8317:
1681     case 8754:
1682         strPinyin="MAO";
1683         break;
1684     case 6114:
1685     case 6550:
1686     case 6613:
1687     case 6828:
1688     case 6856:
1689     case 7325:
1690     case 7949:
1691     case 8044:
1692     case 8139:
1693     case 8740:
1694         strPinyin="MEI";
1695         break;
1696     case 6249:
1697     case 7643:
1698     case 7715:
1699     case 7845:
1700         strPinyin="MEN";
1701         break;
1702     case 5934:
1703     case 6189:
1704     case 6211:
1705     case 6734:
1706     case 7592:
1707     case 7770:
1708     case 8221:
1709     case 8276:
1710     case 8323:
1711     case 8427:
1712     case 8431:
1713         strPinyin="MENG";
1714         break;
1715     case 5634:
1716     case 5855:
1717     case 6234:
1718     case 6368:
1719     case 6455:
1720     case 6608:
1721     case 6772:
1722     case 6921:
1723     case 6984:
1724     case 7563:
1725     case 7682:
1726     case 8445:
1727     case 8767:
1728     case 8771:
1729         strPinyin="MI";
1730         break;
1731     case 6770:
1732     case 6837:
1733     case 6847:
1734     case 7579:
1735     case 7777:
1736         strPinyin="MIAN";
1737         break;
1738     case 6387:
1739     case 6967:
1740     case 7131:
1741     case 7149:
1742     case 7234:
1743     case 7721:
1744     case 7780:
1745     case 8037:
1746         strPinyin="MIAO";
1747         break;
1748     case 5631:
1749     case 6367:
1750     case 8326:
1751     case 8390:
1752         strPinyin="MIE";
1753         break;
1754     case 6069:
1755     case 6526:
1756     case 6741:
1757     case 6793:
1758     case 7137:
1759     case 7168:
1760     case 7175:
1761     case 7710:
1762     case 8710:
1763     case 8628:
1764         strPinyin="MIN";
1765         break;
1766     case 5804:
1767     case 6088:
1768     case 6873:
1769     case 7452:
1770     case 7808:
1771     case 8504:
1772         strPinyin="MING";
1773         break;
1774         strPinyin="MIU";
1775         break;
1776     case 5851:
1777     case 6052:
1778     case 6175:
1779     case 6641:
1780     case 7038:
1781     case 7366:
1782     case 7950:
1783     case 7987:
1784     case 8102:
1785     case 8182:
1786     case 8586:
1787     case 8588:
1788     case 8765:
1789         strPinyin="MO";
1790         break;
1791     case 5716:
1792     case 6372:
1793     case 7788:
1794     case 8254:
1795     case 8290:
1796     case 8642:
1797         strPinyin="MOU";
1798         break;
1799     case 5679:
1800     case 5973:
1801     case 6057:
1802     case 6769:
1803     case 7504:
1804     case 7866:
1805         strPinyin="MU";
1806         break;
1807     case 6437:
1808         strPinyin="N";
1809         break;
1810     case 6264:
1811     case 7539:
1812     case 7953:
1813     case 8136:
1814         strPinyin="NA";
1815         break;
1816     case 5630:
1817     case 6021:
1818     case 6133:
1819     case 7245:
1820         strPinyin="NAI";
1821         break;
1822     case 6411:
1823     case 6478:
1824     case 6479:
1825     case 7310:
1826     case 7578:
1827     case 8279:
1828     case 8486:
1829         strPinyin="NAN";
1830         break;
1831     case 6313:
1832     case 6476:
1833     case 6646:
1834     case 7457:
1835         strPinyin="NANG";
1836         break;
1837     case 5611:
1838     case 5981:
1839     case 6346:
1840     case 6614:
1841     case 7207:
1842     case 7748:
1843     case 7883:
1844     case 8245:
1845         strPinyin="NAO";
1846         break;
1847     case 5811:
1848         strPinyin="NE";
1849         break;
1850         strPinyin="NEI";
1851         break;
1852     case 7705:
1853         strPinyin="NEN";
1854         break;
1855         strPinyin="NENG";
1856         break;
1857     case 5703:
1858     case 5972:
1859     case 6605:
1860     case 6685:
1861     case 7439:
1862     case 7627:
1863     case 7711:
1864     case 7794:
1865     case 7874:
1866     case 8682:
1867         strPinyin="NI";
1868         break;
1869     case 5605:
1870     case 5994:
1871     case 7393:
1872     case 8004:
1873     case 8651:
1874     case 8683:
1875         strPinyin="NIAN";
1876         break;
1877         strPinyin="NIANG";
1878         break;
1879     case 6064:
1880     case 7053:
1881     case 7569:
1882     case 8433:
1883         strPinyin="NIAO";
1884         break;
1885     case 5877:
1886     case 6233:
1887     case 6431:
1888     case 8208:
1889     case 8411:
1890     case 8570:
1891         strPinyin="NIE";
1892         break;
1893         strPinyin="NIN";
1894         break;
1895     case 5690:
1896     case 6344:
1897     case 6924:
1898     case 8187:
1899         strPinyin="NING";
1900         break;
1901     case 6580:
1902     case 6678:
1903     case 7004:
1904         strPinyin="NIU";
1905         break;
1906     case 5715:
1907     case 6370:
1908         strPinyin="NONG";
1909         break;
1910     case 8181:
1911         strPinyin="NOU";
1912         break;
1913     case 6983:
1914     case 7032:
1915     case 7059:
1916     case 7069:
1917         strPinyin="NU";
1918         break;
1919     case 7704:
1920     case 7847:
1921     case 8412:
1922         strPinyin="";
1923         break;
1924         strPinyin="NUAN";
1925         break;
1926         strPinyin="NUE";
1927         break;
1928     case 5748:
1929     case 6289:
1930     case 6386:
1931     case 7927:
1932         strPinyin="NUO";
1933         break;
1934     case 6424:
1935     case 6462:
1936         strPinyin="O";
1937         break;
1938     case 5809:
1939     case 6670:
1940     case 7417:
1941     case 8178:
1942         strPinyin="OU";
1943         break;
1944     case 6166:
1945     case 7243:
1946     case 8365:
1947         strPinyin="PA";
1948         break;
1949     case 5729:
1950     case 6169:
1951     case 6363:
1952         strPinyin="PAI";
1953         break;
1954     case 6761:
1955     case 6790:
1956     case 8140:
1957     case 8165:
1958     case 8320:
1959     case 8571:
1960         strPinyin="PAN";
1961         break;
1962     case 6561:
1963     case 6872:
1964     case 6944:
1965     case 8306:
1966         strPinyin="PANG";
1967         break;
1968     case 6243:
1969     case 6583:
1970     case 6650:
1971     case 7567:
1972     case 8069:
1973         strPinyin="PAO";
1974         break;
1975     case 6446:
1976     case 6490:
1977     case 7623:
1978     case 7934:
1979     case 8512:
1980     case 8612:
1981         strPinyin="PEI";
1982         break;
1983     case 6852:
1984         strPinyin="PEN";
1985         break;
1986     case 6001:
1987     case 6456:
1988     case 6681:
1989     case 8318:
1990         strPinyin="PENG";
1991         break;
1992     case 5607:
1993     case 5682:
1994     case 5880:
1995     case 5892:
1996     case 5915:
1997     case 5960:
1998     case 6017:
1999     case 6037:
2000     case 6308:
2001     case 6472:
2002     case 6647:
2003     case 6836:
2004     case 7039:
2005     case 7102:
2006     case 7233:
2007     case 7422:
2008     case 7802:
2009     case 7828:
2010     case 7875:
2011     case 8117:
2012     case 8166:
2013     case 8223:
2014     case 8271:
2015     case 8589:
2016         strPinyin="PI";
2017         break;
2018     case 5850:
2019     case 7073:
2020     case 7490:
2021     case 7561:
2022     case 8470:
2023     case 8568:
2024         strPinyin="PIAN";
2025         break;
2026     case 5666:
2027     case 6449:
2028     case 7046:
2029     case 7146:
2030     case 7372:
2031     case 7809:
2032     case 8310:
2033         strPinyin="PIAO";
2034         break;
2035     case 6054:
2036     case 7513:
2037         strPinyin="PIE";
2038         break;
2039     case 7041:
2040     case 6253:
2041     case 7016:
2042     case 7315:
2043     case 7482:
2044     case 8213:
2045         strPinyin="PIN";
2046         break;
2047     case 5723:
2048     case 7019:
2049     case 7250:
2050     case 8650:
2051         strPinyin="PING";
2052         break;
2053     case 5647:
2054     case 5922:
2055     case 7174:
2056     case 7839:
2057     case 7862:
2058     case 8011:
2059     case 8345:
2060         strPinyin="PO";
2061         break;
2062     case 5786:
2063     case 6269:
2064         strPinyin="POU";
2065         break;
2066     case 5773:
2067     case 6459:
2068     case 6863:
2069     case 6907:
2070     case 7217:
2071     case 7511:
2072     case 7968:
2073     case 7972:
2074     case 8575:
2075         strPinyin="PU";
2076         break;
2077     case 5633:
2078     case 5725:
2079     case 5963:
2080     case 6027:
2081     case 6046:
2082     case 6089:
2083     case 6129:
2084     case 6134:
2085     case 6161:
2086     case 6213:
2087     case 6366:
2088     case 6450:
2089     case 6508:
2090     case 6510:
2091     case 6764:
2092     case 6831:
2093     case 7075:
2094     case 7118:
2095     case 7187:
2096     case 7189:
2097     case 7229:
2098     case 7271:
2099     case 7342:
2100     case 7440:
2101     case 7605:
2102     case 7687:
2103     case 7712:
2104     case 7751:
2105     case 8193:
2106     case 8251:
2107     case 8264:
2108     case 8475:
2109     case 8476:
2110     case 8572:
2111     case 8702:
2112     case 8772:
2113         strPinyin="QI";
2114         break;
2115     case 6154:
2116     case 8736:
2117         strPinyin="QIA";
2118         break;
2119     case 5727:
2120     case 5761:
2121     case 5868:
2122     case 6023:
2123     case 6045:
2124     case 6071:
2125     case 6271:
2126     case 6509:
2127     case 6705:
2128     case 6727:
2129     case 6925:
2130     case 6926:
2131     case 6929:
2132     case 7155:
2133     case 7293:
2134     case 7541:
2135     case 7709:
2136     case 7852:
2137     case 8215:
2138     case 8373:
2139         strPinyin="QIAN";
2140         break;
2141     case 6762:
2142     case 7045:
2143     case 7341:
2144     case 7408:
2145     case 7633:
2146     case 7926:
2147     case 7947:
2148     case 7974:
2149     case 8163:
2150     case 8262:
2151     case 8439:
2152     case 8536:
2153         strPinyin="QIANG";
2154         break;
2155     case 5668:
2156     case 5829:
2157     case 5859:
2158     case 6081:
2159     case 6529:
2160     case 6724:
2161     case 6730:
2162     case 7352:
2163     case 7745:
2164     case 8546:
2165     case 8719:
2166         strPinyin="QIAO";
2167         break;
2168     case 5907:
2169     case 6711:
2170     case 7010:
2171     case 7492:
2172     case 7938:
2173     case 8370:
2174         strPinyin="QIE";
2175         break;
2176     case 6043:
2177     case 6276:
2178     case 6336:
2179     case 6426:
2180     case 6463:
2181     case 6858:
2182     case 7353:
2183     case 7923:
2184     case 8291:
2185     case 8432:
2186         strPinyin="QIN";
2187         break;
2188     case 6060:
2189     case 6485:
2190     case 7349:
2191     case 7764:
2192     case 8263:
2193     case 8332:
2194     case 8368:
2195     case 8605:
2196     case 8675:
2197     case 8784:
2198         strPinyin="QING";
2199         break;
2200     case 5886:
2201     case 6068:
2202     case 8123:
2203     case 8243:
2204     case 8344:
2205     case 8528:
2206     case 8638:
2207         strPinyin="QIONG";
2208         break;
2209     case 5720:
2210     case 5947:
2211     case 6576:
2212     case 6848:
2213     case 6947:
2214     case 6957:
2215     case 7317:
2216     case 7468:
2217     case 8216:
2218     case 8239:
2219     case 8288:
2220     case 8435:
2221     case 8460:
2222     case 8690:
2223     case 8792:
2224         strPinyin="QIU";
2225         break;
2226     case 5816:
2227     case 5930:
2228     case 6201:
2229     case 6230:
2230     case 6511:
2231     case 6573:
2232     case 6754:
2233     case 7219:
2234     case 7479:
2235     case 7512:
2236     case 7552:
2237     case 7678:
2238     case 7765:
2239     case 8119:
2240     case 8248:
2241     case 8329:
2242     case 8480:
2243     case 8636:
2244     case 8781:
2245         strPinyin="QU";
2246         break;
2247     case 5825:
2248     case 6085:
2249     case 6710:
2250     case 7125:
2251     case 7390:
2252     case 7816:
2253     case 7893:
2254     case 8273:
2255     case 8360:
2256     case 8760:
2257         strPinyin="QUAN";
2258         break;
2259     case 6755:
2260     case 6758:
2261     case 7708:
2262         strPinyin="QUE";
2263         break;
2264     case 6950:
2265         strPinyin="QUN";
2266         break;
2267     case 6059:
2268     case 8237:
2269     case 8755:
2270         strPinyin="RAN";
2271         break;
2272     case 7692:
2273     case 8006:
2274         strPinyin="RANG";
2275         break;
2276     case 6073:
2277     case 7012:
2278     case 7267:
2279         strPinyin="RAO";
2280         break;
2281         strPinyin="RE";
2282         break;
2283     case 5680:
2284     case 6083:
2285     case 6156:
2286     case 6631:
2287     case 7377:
2288     case 7994:
2289     case 8137:
2290         strPinyin="REN";
2291         break;
2292         strPinyin="RENG";
2293         break;
2294         strPinyin="RI";
2295         break;
2296     case 6541:
2297     case 6585:
2298     case 7337:
2299     case 7532:
2300     case 8278:
2301         strPinyin="RONG";
2302         break;
2303     case 8459:
2304     case 8569:
2305     case 8723:
2306         strPinyin="ROU";
2307         break;
2308     case 6174:
2309     case 6224:
2310     case 6473:
2311     case 6818:
2312     case 6865:
2313     case 6906:
2314     case 7140:
2315     case 7908:
2316     case 8164:
2317     case 8212:
2318         strPinyin="RU";
2319         break;
2320     case 7535:
2321         strPinyin="RUAN";
2322         break;
2323     case 6039:
2324     case 6208:
2325     case 7236:
2326     case 7803:
2327     case 8224:
2328         strPinyin="RUI";
2329         break;
2330         strPinyin="RUN";
2331         break;
2332     case 5728:
2333     case 8372:
2334         strPinyin="RUO";
2335         break;
2336     case 5606:
2337     case 5677:
2338     case 7493:
2339     case 7559:
2340     case 7610:
2341         strPinyin="SA";
2342         break;
2343     case 6471:
2344         strPinyin="SAI";
2345         break;
2346     case 6644:
2347     case 7507:
2348     case 8454:
2349         strPinyin="SAN";
2350         break;
2351     case 6290:
2352     case 7763:
2353     case 8210:
2354         strPinyin="SANG";
2355         break;
2356     case 6003:
2357     case 7150:
2358     case 7156:
2359     case 7593:
2360     case 8094:
2361     case 8694:
2362         strPinyin="SAO";
2363         break;
2364         strPinyin="SE";
2365         break;
2366         strPinyin="SEN";
2367         break;
2368         strPinyin="SENG";
2369         break;
2370     case 6394:
2371     case 7606:
2372     case 7901:
2373     case 8080:
2374     case 8436:
2375     case 8614:
2376     case 8672:
2377         strPinyin="SHA";
2378         break;
2379     case 8507:
2380         strPinyin="SHAI";
2381         break;
2382     case 5663:
2383     case 5808:
2384     case 5923:
2385     case 5979:
2386     case 6047:
2387     case 6890:
2388     case 7009:
2389     case 7051:
2390     case 7083:
2391     case 7594:
2392     case 7844:
2393     case 8062:
2394     case 8321:
2395     case 8414:
2396     case 8539:
2397     case 8713:
2398         strPinyin="SHAN";
2399         break;
2400     case 5980:
2401     case 7120:
2402     case 7368:
2403     case 7656:
2404     case 8592:
2405         strPinyin="SHANG";
2406         break;
2407     case 5931:
2408     case 6070:
2409     case 6891:
2410     case 7228:
2411     case 8366:
2412     case 8425:
2413         strPinyin="SHAO";
2414         break;
2415     case 5639:
2416     case 5760:
2417     case 6606:
2418     case 6860:
2419     case 7608:
2420     case 7820:
2421     case 8774:
2422         strPinyin="SHE";
2423         break;
2424     case 5837:
2425     case 6123:
2426     case 6351:
2427     case 6841:
2428     case 7309:
2429     case 7547:
2430     case 7982:
2431     case 8255:
2432         strPinyin="SHEN";
2433         break;
2434     case 6551:
2435     case 7441:
2436     case 7782:
2437     case 8347:
2438         strPinyin="SHENG";
2439         break;
2440     case 5854:
2441     case 5985:
2442     case 6110:
2443     case 6173:
2444     case 6317:
2445     case 7388:
2446     case 7459:
2447     case 7634:
2448     case 7870:
2449     case 8307:
2450     case 8334:
2451     case 8363:
2452     case 8525:
2453     case 8669:
2454     case 8685:
2455         strPinyin="SHI";
2456         break;
2457     case 6587:
2458     case 7123:
2459     case 8428:
2460         strPinyin="SHOU";
2461         break;
2462     case 5731:
2463     case 5951:
2464     case 6136:
2465     case 6283:
2466     case 6780:
2467     case 6888:
2468     case 7013:
2469     case 7508:
2470     case 7582:
2471     case 7988:
2472         strPinyin="SHU";
2473         break;
2474     case 6407:
2475         strPinyin="SHUA";
2476         break;
2477     case 8316:
2478         strPinyin="SHUAI";
2479         break;
2480     case 6737:
2481     case 6844:
2482         strPinyin="SHUAN";
2483         break;
2484     case 7055:
2485         strPinyin="SHUANG";
2486         break;
2487         strPinyin="SHUI";
2488         break;
2489         strPinyin="SHUN";
2490         break;
2491     case 6184:
2492     case 6287:
2493     case 6989:
2494     case 7335:
2495     case 7869:
2496         strPinyin="SHUO";
2497         break;
2498     case 5643:
2499     case 5778:
2500     case 5944:
2501     case 6348:
2502     case 6765:
2503     case 6784:
2504     case 6889:
2505     case 7006:
2506     case 7065:
2507     case 7133:
2508     case 7675:
2509     case 7940:
2510     case 8024:
2511     case 8174:
2512     case 8247:
2513     case 8351:
2514         strPinyin="SI";
2515         break;
2516     case 5801:
2517     case 6131:
2518     case 6534:
2519     case 6552:
2520     case 6676:
2521     case 6704:
2522     case 6833:
2523     case 8121:
2524         strPinyin="SONG";
2525         break;
2526     case 5937:
2527     case 6220:
2528     case 6418:
2529     case 6453:
2530     case 6640:
2531     case 6849:
2532     case 7612:
2533     case 7804:
2534     case 7943:
2535     case 8284:
2536         strPinyin="SOU";
2537         break;
2538     case 5777:
2539     case 5853:
2540     case 6188:
2541     case 6428:
2542     case 6726:
2543     case 6819:
2544     case 8389:
2545     case 8602:
2546     case 8653:
2547         strPinyin="SU";
2548         break;
2549     case 6601:
2550         strPinyin="SUAN";
2551         break;
2552     case 5839:
2553     case 6120:
2554     case 6901:
2555     case 6968:
2556     case 7661:
2557     case 7785:
2558     case 7801:
2559         strPinyin="SUI";
2560         break;
2561     case 6105:
2562     case 6588:
2563     case 6624:
2564     case 7330:
2565     case 8632:
2566         strPinyin="SUN";
2567         break;
2568     case 6379:
2569     case 6434:
2570     case 6442:
2571     case 7022:
2572     case 7288:
2573     case 7792:
2574     case 8440:
2575         strPinyin="SUO";
2576         break;
2577     case 6743:
2578     case 6866:
2579     case 6961:
2580     case 7329:
2581     case 7719:
2582     case 7872:
2583     case 8533:
2584     case 8703:
2585         strPinyin="TA";
2586         break;
2587     case 5902:
2588     case 6223:
2589     case 6330:
2590     case 7070:
2591     case 7536:
2592     case 7638:
2593     case 7849:
2594     case 8544:
2595     case 8656:
2596         strPinyin="TAI";
2597         break;
2598     case 5916:
2599     case 6903:
2600     case 7428:
2601     case 7694:
2602     case 7867:
2603     case 7936:
2604     case 8191:
2605         strPinyin="TAN";
2606         break;
2607     case 5746:
2608     case 6491:
2609     case 6871:
2610     case 7209:
2611     case 7344:
2612     case 7906:
2613     case 7959:
2614     case 8177:
2615     case 8305:
2616     case 8311:
2617     case 8442:
2618     case 8517:
2619         strPinyin="TANG";
2620         break;
2621     case 5627:
2622     case 6391:
2623     case 6812:
2624     case 7226:
2625     case 7666:
2626         strPinyin="TAO";
2627         break;
2628         strPinyin="1845 餐";
2629         break;
2630     case 6315:
2631     case 7693:
2632     case 7911:
2633         strPinyin="TE";
2634         break;
2635     case 7588:
2636         strPinyin="TENG";
2637         break;
2638     case 5735:
2639     case 6709:
2640     case 6949:
2641     case 7130:
2642     case 8035:
2643     case 8151:
2644     case 8514:
2645         strPinyin="TI";
2646         break;
2647     case 6261:
2648     case 6735:
2649     case 6757:
2650     case 7369:
2651     case 7817:
2652         strPinyin="TIAN";
2653         break;
2654     case 5712:
2655     case 7686:
2656     case 8127:
2657     case 8272:
2658     case 8352:
2659     case 8448:
2660     case 8622:
2661     case 8670:
2662     case 8756:
2663         strPinyin="TIAO";
2664         break;
2665     case 6138:
2666     case 8749:
2667         strPinyin="TIE";
2668         break;
2669     case 6080:
2670     case 6167:
2671     case 7035:
2672     case 7272:
2673     case 7890:
2674     case 8249:
2675     case 8610:
2676         strPinyin="TING";
2677         break;
2678     case 5701:
2679     case 5758:
2680     case 6077:
2681     case 6444:
2682     case 6690:
2683     case 6892:
2684     case 7737:
2685         strPinyin="TONG";
2686         break;
2687     case 7855:
2688     case 7822:
2689     case 8727:
2690         strPinyin="TOU";
2691         break;
2692     case 6002:
2693     case 6117:
2694     case 6143:
2695     case 7842:
2696     case 8509:
2697         strPinyin="TU";
2698         break;
2699     case 6250:
2700     case 6972:
2701         strPinyin="TUAN";
2702         break;
2703     case 7653:
2704         strPinyin="TUI";
2705         break;
2706     case 5759:
2707     case 6629:
2708     case 7453:
2709     case 7564:
2710         strPinyin="TUN";
2711         break;
2712     case 5617:
2713     case 5702:
2714     case 5971:
2715     case 6653:
2716     case 6791:
2717     case 7256:
2718     case 7262:
2719     case 7350:
2720     case 7740:
2721     case 8374:
2722     case 8502:
2723     case 8541:
2724     case 8630:
2725         strPinyin="TUO";
2726         break;
2727     case 5684:
2728     case 7020:
2729     case 7580:
2730         strPinyin="WA";
2731         break;
2732         strPinyin="WAI";
2733         break;
2734     case 5664:
2735     case 6025:
2736     case 6150:
2737     case 7093:
2738     case 7126:
2739     case 7194:
2740     case 7568:
2741     case 7821:
2742     case 8274:
2743         strPinyin="WAN";
2744         break;
2745     case 5672:
2746     case 6244:
2747     case 6715:
2748     case 7394:
2749     case 8745:
2750         strPinyin="WANG";
2751         break;
2752     case 5743:
2753     case 5835:
2754     case 5881:
2755     case 5883:
2756     case 6158:
2757     case 6217:
2758     case 6488:
2759     case 6501:
2760     case 6543:
2761     case 6545:
2762     case 6611:
2763     case 6612:
2764     case 6739:
2765     case 6777:
2766     case 6802:
2767     case 6822:
2768     case 6952:
2769     case 7024:
2770     case 7166:
2771     case 7224:
2772     case 7406:
2773     case 7631:
2774     case 7648:
2775     case 8084:
2776     case 8426:
2777     case 8659:
2778         strPinyin="WEI";
2779         break;
2780     case 5656:
2781     case 6751:
2782     case 6775:
2783     case 7223:
2784     case 8609:
2785         strPinyin="WEN";
2786         break;
2787     case 6178:
2788     case 6219:
2789         strPinyin="WENG";
2790         break;
2791     case 5733:
2792     case 6111:
2793     case 6502:
2794     case 6855:
2795     case 7531:
2796     case 7750:
2797     case 8627:
2798         strPinyin="WO";
2799         break;
2800     case 5603:
2801     case 5685:
2802     case 5867:
2803     case 5889:
2804     case 5956:
2805     case 6044:
2806     case 6377:
2807     case 6648:
2808     case 6668:
2809     case 6672:
2810     case 6820:
2811     case 6927:
2812     case 6935:
2813     case 6992:
2814     case 7036:
2815     case 7080:
2816     case 7227:
2817     case 7485:
2818     case 7641:
2819     case 8036:
2820     case 8045:
2821     case 8077:
2822     case 8258:
2823     case 8640:
2824     case 8789:
2825         strPinyin="WU";
2826         break;
2827     case 5750:
2828     case 5766:
2829     case 5884:
2830     case 5913:
2831     case 6130:
2832     case 6163:
2833     case 6191:
2834     case 6241:
2835     case 6381:
2836     case 6567:
2837     case 6630:
2838     case 6750:
2839     case 6827:
2840     case 6832:
2841     case 6979:
2842     case 7050:
2843     case 7184:
2844     case 7356:
2845     case 7456:
2846     case 7474:
2847     case 7604:
2848     case 7668:
2849     case 7689:
2850     case 7691:
2851     case 8010:
2852     case 8122:
2853     case 8265:
2854     case 8303:
2855     case 8312:
2856     case 8410:
2857     case 8424:
2858     case 8443:
2859     case 8449:
2860     case 8466:
2861     case 8521:
2862     case 8791:
2863         strPinyin="XI";
2864         break;
2865     case 6340:
2866     case 6582:
2867     case 6958:
2868     case 7206:
2869     case 7252:
2870     case 7744:
2871     case 8093:
2872     case 8333:
2873     case 8779:
2874         strPinyin="XIA";
2875         break;
2876     case 5794:
2877     case 5823:
2878     case 6040:
2879     case 6118:
2880     case 6226:
2881     case 6513:
2882     case 6593:
2883     case 6963:
2884     case 7021:
2885     case 7515:
2886     case 7662:
2887     case 7676:
2888     case 8034:
2889     case 8079:
2890     case 8225:
2891     case 8358:
2892     case 8444:
2893     case 8503:
2894     case 8548:
2895     case 8549:
2896     case 8617:
2897         strPinyin="XIAN";
2898         break;
2899     case 6028:
2900     case 6157:
2901     case 6635:
2902     case 6652:
2903     case 7088:
2904     case 7129:
2905     case 8313:
2906     case 8663:
2907     case 8747:
2908         strPinyin="XIANG";
2909         break;
2910     case 6356:
2911     case 6537:
2912     case 6876:
2913     case 6948:
2914     case 7071:
2915     case 7115:
2916     case 7241:
2917     case 7253:
2918     case 8257:
2919     case 8367:
2920     case 8379:
2921     case 8744:
2922         strPinyin="XIAO";
2923         break;
2924     case 5741:
2925     case 5784:
2926     case 5936:
2927     case 5938:
2928     case 6215:
2929     case 6302:
2930     case 6619:
2931     case 6661:
2932     case 6845:
2933     case 6912:
2934     case 6966:
2935     case 7105:
2936     case 7151:
2937     case 7331:
2938     case 7339:
2939     case 8583:
2940         strPinyin="XIE";
2941         break;
2942     case 5622:
2943     case 6016:
2944     case 7431:
2945     case 7607:
2946     case 8646:
2947         strPinyin="XIN";
2948         break;
2949     case 5874:
2950     case 6084:
2951     case 6309:
2952     case 6712:
2953     case 7742:
2954         strPinyin="XING";
2955         break;
2956     case 6026:
2957         strPinyin="XIONG";
2958         break;
2959     case 6361:
2960     case 6522:
2961     case 6642:
2962     case 6651:
2963     case 6869:
2964     case 8028:
2965     case 8587:
2966     case 8759:
2967         strPinyin="XIU";
2968         break;
2969     case 5828:
2970     case 5935:
2971     case 5955:
2972     case 6203:
2973     case 6810:
2974     case 6851:
2975     case 7179:
2976     case 7282:
2977     case 7667:
2978     case 7776:
2979     case 8167:
2980     case 8458:
2981     case 8515:
2982         strPinyin="XU";
2983         break;
2984     case 5756:
2985     case 5846:
2986     case 6170:
2987     case 6279:
2988     case 6789:
2989     case 6854:
2990     case 6886:
2991     case 7215:
2992     case 7324:
2993     case 7449:
2994     case 7637:
2995     case 7651:
2996     case 7759:
2997     case 7871:
2998     case 7964:
2999     case 8071:
3000         strPinyin="XUAN";
3001         break;
3002     case 5842:
3003     case 7720:
3004     case 8529:
3005     case 8708:
3006         strPinyin="XUE";
3007         break;
3008     case 5767:
3009     case 5908:
3010     case 5987:
3011     case 6087:
3012     case 6101:
3013     case 6206:
3014     case 6225:
3015     case 6530:
3016     case 6563:
3017     case 6620:
3018     case 6694:
3019     case 6813:
3020     case 6817:
3021     case 7454:
3022     case 8131:
3023     case 8524:
3024     case 8664:
3025         strPinyin="XUN";
3026         break;
3027     case 5683:
3028     case 5975:
3029     case 6275:
3030     case 6512:
3031     case 6934:
3032     case 7011:
3033     case 7180:
3034     case 7266:
3035     case 7518:
3036     case 7728:
3037     case 7793:
3038     case 8073:
3039         strPinyin="YA";
3040         break;
3041     case 5641:
3042     case 5645:
3043     case 5718:
3044     case 5740:
3045     case 5780:
3046     case 5861:
3047     case 5917:
3048     case 5919:
3049     case 6030:
3050     case 6146:
3051     case 6535:
3052     case 6691:
3053     case 6738:
3054     case 6753:
3055     case 6846:
3056     case 6857:
3057     case 6991:
3058     case 7044:
3059     case 7192:
3060     case 7360:
3061     case 7444:
3062     case 7557:
3063     case 7645:
3064     case 7827:
3065     case 8359:
3066     case 8506:
3067     case 8742:
3068     case 8748:
3069     case 8790:
3070         strPinyin="YAN";
3071         break;
3072     case 6564:
3073     case 6683:
3074     case 7630:
3075     case 7640:
3076     case 7706:
3077     case 8253:
3078     case 8717:
3079         strPinyin="YANG";
3080         break;
3081     case 5618:
3082     case 5619:
3083     case 6326:
3084     case 6542:
3085     case 6570:
3086     case 7159:
3087     case 7182:
3088     case 7235:
3089     case 7387:
3090     case 7455:
3091     case 7540:
3092     case 7902:
3093     case 8046:
3094     case 8126:
3095     case 8477:
3096     case 8705:
3097         strPinyin="YAO";
3098         break;
3099     case 5644:
3100     case 5843:
3101     case 5894:
3102     case 6262:
3103     case 7442:
3104     case 7639:
3105     case 7884:
3106         strPinyin="YE";
3107         break;
3108     case 5655:
3109     case 5657:
3110     case 5670:
3111     case 5693:
3112     case 5711:
3113     case 5817:
3114     case 5961:
3115     case 5992:
3116     case 6018:
3117     case 6051:
3118     case 6072:
3119     case 6218:
3120     case 6236:
3121     case 6240:
3122     case 6258:
3123     case 6314:
3124     case 6329:
3125     case 6355:
3126     case 6362:
3127     case 6441:
3128     case 6470:
3129     case 6527:
3130     case 6558:
3131     case 6602:
3132     case 6634:
3133     case 6688:
3134     case 6689:
3135     case 6708:
3136     case 6884:
3137     case 6938:
3138     case 7068:
3139     case 7143:
3140     case 7376:
3141     case 7383:
3142     case 7461:
3143     case 7629:
3144     case 7658:
3145     case 7784:
3146     case 7838:
3147     case 7955:
3148     case 7978:
3149     case 8074:
3150     case 8089:
3151     case 8115:
3152     case 8120:
3153     case 8270:
3154     case 8415:
3155     case 8464:
3156     case 8472:
3157     case 8493:
3158     case 8780:
3159         strPinyin="YI";
3160         break;
3161     case 5623:
3162     case 5920:
3163     case 5983:
3164     case 6007:
3165     case 6065:
3166     case 6337:
3167     case 6419:
3168     case 6594:
3169     case 6625:
3170     case 6806:
3171     case 7519:
3172     case 7887:
3173     case 8111:
3174     case 8230:
3175     case 8615:
3176     case 8624:
3177         strPinyin="YIN";
3178         break;
3179     case 5788:
3180     case 5911:
3181     case 6067:
3182     case 6094:
3183     case 6126:
3184     case 6151:
3185     case 6186:
3186     case 6292:
3187     case 6451:
3188     case 6663:
3189     case 6862:
3190     case 6875:
3191     case 6913:
3192     case 7188:
3193     case 7212:
3194     case 7326:
3195     case 7584:
3196     case 8048:
3197     case 8108:
3198     case 8203:
3199     case 8331:
3200         strPinyin="YING";
3201         break;
3202     case 6401:
3203         strPinyin="YO";
3204         break;
3205     case 5724:
3206     case 5953:
3207     case 6013:
3208     case 6415:
3209     case 6728:
3210     case 7163:
3211     case 7962:
3212     case 8014:
3213     case 8711:
3214     case 8751:
3215         strPinyin="YONG";
3216         break;
3217     case 5653:
3218     case 5692:
3219     case 5707:
3220     case 6112:
3221     case 6115:
3222     case 6121:
3223     case 6347:
3224     case 6483:
3225     case 6922:
3226     case 7254:
3227     case 7364:
3228     case 7527:
3229     case 7880:
3230     case 8064:
3231     case 8236:
3232     case 8242:
3233     case 8286:
3234     case 8647:
3235     case 8778:
3236     case 8788:
3237         strPinyin="YOU";
3238         break;
3239     case 5614:
3240     case 5625:
3241     case 5681:
3242     case 5722:
3243     case 5836:
3244     case 5845:
3245     case 6139:
3246     case 6187:
3247     case 6277:
3248     case 6484:
3249     case 6486:
3250     case 6546:
3251     case 6592:
3252     case 6632:
3253     case 6637:
3254     case 6655:
3255     case 6748:
3256     case 6987:
3257     case 6993:
3258     case 7005:
3259     case 7090:
3260     case 7204:
3261     case 7437:
3262     case 7476:
3263     case 7573:
3264     case 7603:
3265     case 7622:
3266     case 7647:
3267     case 7659:
3268     case 7718:
3269     case 7858:
3270     case 8033:
3271     case 8054:
3272     case 8085:
3273     case 8086:
3274     case 8130:
3275     case 8133:
3276     case 8266:
3277     case 8285:
3278     case 8336:
3279     case 8407:
3280     case 8408:
3281     case 8607:
3282     case 8625:
3283         strPinyin="YU";
3284         break;
3285     case 5989:
3286     case 6011:
3287     case 6282:
3288     case 6768:
3289     case 7034:
3290     case 7205:
3291     case 7358:
3292     case 7528:
3293     case 7783:
3294     case 8016:
3295     case 8302:
3296     case 8378:
3297     case 8629:
3298         strPinyin="YUAN";
3299         break;
3300     case 5763:
3301     case 6914:
3302     case 7348:
3303     case 7530:
3304     case 7865:
3305         strPinyin="YUE";
3306         break;
3307     case 5909:
3308     case 6031:
3309     case 6581:
3310     case 6702:
3311     case 6719:
3312     case 7101:
3313     case 7225:
3314     case 7370:
3315     case 7432:
3316     case 7521:
3317     case 7657:
3318         strPinyin="YUN";
3319         break;
3320     case 6257:
3321     case 6338:
3322         strPinyin="ZA";
3323         break;
3324     case 6544:
3325     case 7162:
3326         strPinyin="ZAI";
3327         break;
3328     case 7222:
3329     case 7435:
3330     case 8402:
3331     case 8456:
3332     case 8485:
3333     case 8641:
3334         strPinyin="ZAN";
3335         break;
3336     case 6242:
3337     case 7064:
3338     case 7416:
3339         strPinyin="ZANG";
3340         break;
3341     case 6380:
3342         strPinyin="ZAO";
3343         break;
3344     case 5638:
3345     case 8369:
3346     case 5651:
3347     case 6385:
3348     case 6493:
3349     case 6937:
3350     case 7430:
3351     case 8348:
3352     case 8423:
3353         strPinyin="ZE";
3354         break;
3355         strPinyin="ZEI";
3356         break;
3357     case 5858:
3358         strPinyin="ZEN";
3359         break;
3360     case 7153:
3361     case 7421:
3362     case 7832:
3363     case 7913:
3364         strPinyin="ZENG";
3365         break;
3366     case 6610:
3367     case 6274:
3368     case 6324:
3369     case 6369:
3370     case 6378:
3371     case 7736:
3372     case 8068:
3373     case 8238:
3374     case 8794:
3375         strPinyin="ZHA";
3376         break;
3377     case 7746:
3378     case 8109:
3379         strPinyin="ZHAI";
3380         break;
3381     case 5862:
3382     case 6288:
3383     case 7625:
3384         strPinyin="ZHAN";
3385         break;
3386     case 5675:
3387     case 5921:
3388     case 6504:
3389     case 6554:
3390     case 6615:
3391     case 7049:
3392     case 7216:
3393     case 8315:
3394         strPinyin="ZHANG";
3395         break;
3396     case 5815:
3397     case 7294:
3398     case 7840:
3399     case 8341:
3400         strPinyin="ZHAO";
3401         break;
3402     case 5856:
3403     case 6301:
3404     case 7247:
3405     case 7392:
3406     case 7761:
3407     case 8049:
3408     case 8162:
3409     case 8256:
3410     case 8487:
3411         strPinyin="ZHE";
3412         break;
3413     case 5958:
3414     case 6172:
3415     case 6805:
3416     case 7139:
3417     case 7269:
3418     case 7327:
3419     case 7384:
3420     case 7466:
3421     case 7551:
3422     case 7562:
3423     case 7685:
3424     case 7819:
3425     case 8001:
3426     case 8018:
3427     case 8380:
3428         strPinyin="ZHEN";
3429         break;
3430     case 5826:
3431     case 6531:
3432     case 6571:
3433     case 7859:
3434     case 7903:
3435     case 8361:
3436         strPinyin="ZHENG";
3437         break;
3438     case 5620:
3439     case 5876:
3440     case 5904:
3441     case 5990:
3442     case 6038:
3443     case 6293:
3444     case 6489:
3445     case 6669:
3446     case 6973:
3447     case 6975:
3448     case 7079:
3449     case 7246:
3450     case 7255:
3451     case 7257:
3452     case 7268:
3453     case 7382:
3454     case 7389:
3455     case 7462:
3456     case 7553:
3457     case 7589:
3458     case 7677:
3459     case 7683:
3460     case 7773:
3461     case 7984:
3462     case 8026:
3463     case 8075:
3464     case 8246:
3465     case 8474:
3466     case 8505:
3467     case 8537:
3468     case 8557:
3469     case 8560:
3470     case 8584:
3471     case 8603:
3472         strPinyin="ZHI";
3473         break;
3474     case 5803:
3475     case 7981:
3476     case 8314:
3477     case 8417:
3478     case 8564:
3479         strPinyin="ZHONG";
3480         break;
3481     case 6107:
3482     case 6390:
3483     case 7008:
3484     case 7091:
3485     case 7107:
3486     case 7548:
3487     case 7756:
3488     case 8406:
3489     case 8492:
3490         strPinyin="ZHOU";
3491         break;
3492     case 5689:
3493     case 5710:
3494     case 5905:
3495     case 6049:
3496     case 6079:
3497     case 6808:
3498     case 6830:
3499     case 6883:
3500     case 7244:
3501     case 7338:
3502     case 7345:
3503     case 7636:
3504     case 7889:
3505     case 8070:
3506     case 8081:
3507     case 8335:
3508     case 8371:
3509     case 8422:
3510     case 8467:
3511     case 8578:
3512     case 8770:
3513         strPinyin="ZHU";
3514         break;
3515         strPinyin="ZHUA";
3516         break;
3517         strPinyin="ZHUAI";
3518         break;
3519     case 6389:
3520     case 6645:
3521     case 8207:
3522         strPinyin="ZHUAN";
3523         break;
3524     case 5755:
3525         strPinyin="ZHUANG";
3526         break;
3527     case 6723:
3528     case 7077:
3529     case 7136:
3530         strPinyin="ZHUI";
3531         break;
3532     case 7538:
3533     case 8124:
3534         strPinyin="ZHUN";
3535         break;
3536     case 5730:
3537     case 5834:
3538     case 6310:
3539     case 6823:
3540     case 6835:
3541     case 6910:
3542     case 7644:
3543     case 7690:
3544     case 7729:
3545     case 7977:
3546         strPinyin="ZHUO";
3547         break;
3548     case 5849:
3549     case 6549:
3550     case 7002:
3551     case 7060:
3552     case 7127:
3553     case 7287:
3554     case 7402:
3555     case 7463:
3556     case 7707:
3557     case 7786:
3558     case 7937:
3559     case 7986:
3560     case 8172:
3561     case 8342:
3562     case 8450:
3563     case 8484:
3564     case 8594:
3565     case 8604:
3566     case 8623:
3567     case 8686:
3568     case 8758:
3569         strPinyin="ZI";
3570         break;
3571     case 5744:
3572     case 7574:
3573     case 8453:
3574         strPinyin="ZONG";
3575         break;
3576     case 5833:
3577     case 5878:
3578     case 5924:
3579     case 7067:
3580     case 8677:
3581         strPinyin="ZOU";
3582         break;
3583     case 5762:
3584     case 6147:
3585     case 7963:
3586         strPinyin="ZU";
3587         break;
3588     case 6312:
3589     case 7158:
3590     case 8582:
3591         strPinyin="ZUAN";
3592         break;
3593     case 6209:
3594         strPinyin="ZUI";
3595         break;
3596     case 6304:
3597     case 7355:
3598     case 8714:
3599         strPinyin="ZUN";
3600         break;
3601     case 5872:
3602     case 6382:
3603     case 6460:
3604     case 6684:
3605     case 7549:
3606     case 7681:
3607         strPinyin="ZUO";
3608         break;
3609     default:
3610         if(nCode>=1601 && nCode<=1602)
3611         {
3612             strPinyin="A";
3613             break;
3614         }
3615         if(nCode>=1603 && nCode<=1615)
3616         {
3617             strPinyin="AI";
3618             break;
3619         }
3620         if(nCode>=1616 && nCode<=1624)
3621         {
3622             strPinyin="AN";
3623             break;
3624         }
3625         if(nCode>=1625 && nCode<=1627)
3626         {
3627             strPinyin="ANG";
3628             break;
3629         }
3630         if(nCode>=1628 && nCode<=1636)
3631         {
3632             strPinyin="AO";
3633             break;
3634         }
3635         if(nCode>=1637 && nCode<=1654)
3636         {
3637             strPinyin="BA";
3638             break;
3639         }
3640         if(nCode>=1655 && nCode<=1662)
3641         {
3642             strPinyin="BAI";
3643             break;
3644         }
3645         if(nCode>=1663 && nCode<=1677)
3646         {
3647             strPinyin="BAN";
3648             break;
3649         }
3650         if(nCode>=1678 && nCode<=1689)
3651         {
3652             strPinyin="BANG";
3653             break;
3654         }
3655         if(nCode>=1690 && nCode<=1712)
3656         {
3657             strPinyin="BAO";
3658             break;
3659         }
3660         if(nCode>=1713 && nCode<=1727)
3661         {
3662             strPinyin="BEI";
3663             break;
3664         }
3665         if(nCode>=1728 && nCode<=1731)
3666         {
3667             strPinyin="BEN";
3668             break;
3669         }
3670         if(nCode>=1732 && nCode<=1737)
3671         {
3672             strPinyin="BENG";
3673             break;
3674         }
3675         if(nCode>=1738 && nCode<=1761)
3676         {
3677             strPinyin="BI";
3678             break;
3679         }
3680         if(nCode>=1762 && nCode<=1773)
3681         {
3682             strPinyin="BIAN";
3683             break;
3684         }
3685         if(nCode>=1774 && nCode<=1777)
3686         {
3687             strPinyin="BIAO";
3688             break;
3689         }
3690         if(nCode>=1778 && nCode<=1781)
3691         {
3692             strPinyin="BIE";
3693             break;
3694         }
3695         if(nCode>=1782 && nCode<=1787)
3696         {
3697             strPinyin="BIN";
3698             break;
3699         }
3700         if(nCode>=1788 && nCode<=1794)
3701         {
3702             strPinyin="BING";
3703             break;
3704         }
3705         if(nCode>=1801 && nCode<=1802)
3706         {
3707             strPinyin="BING";
3708             break;
3709         }
3710         if(nCode>=1803 && nCode<=1821)
3711         {
3712             strPinyin="BO";
3713             break;
3714         }
3715         if(nCode>=1822 && nCode<=1832)
3716         {
3717             strPinyin="BU";
3718             break;
3719         }
3720         if(nCode==1833)
3721         {
3722             strPinyin="CA";
3723             break;
3724         }
3725         if(nCode>=1834 && nCode<=1844)
3726         {
3727             strPinyin="CAI";
3728             break;
3729         }
3730         if(nCode>=1845 && nCode<=1851)
3731         {
3732             strPinyin="CAN";
3733             break;
3734         }
3735         if(nCode>=1852 && nCode<=1856)
3736         {
3737             strPinyin="CANG";
3738             break;
3739         }
3740         if(nCode>=1857 && nCode<=1861)
3741         {
3742             strPinyin="CAO";
3743             break;
3744         }
3745         if(nCode>=1862 && nCode<=1866)
3746         {
3747             strPinyin="CE";
3748             break;
3749         }
3750         if(nCode>=1867 && nCode<=1868)
3751         {
3752             strPinyin="CENG";
3753             break;
3754         }
3755         if(nCode>=1869 && nCode<=1879)
3756         {
3757             strPinyin="CHA";
3758             break;
3759         }
3760         if(nCode>=1880 && nCode<=1882)
3761         {
3762             strPinyin="CHAI";
3763             break;
3764         }
3765         if(nCode>=1883 && nCode<=1892)
3766         {
3767             strPinyin="CHAN";
3768             break;
3769         }
3770         if(nCode>=1893 && nCode<=1911)
3771         {
3772             strPinyin="CHANG";
3773             break;
3774         }
3775         if(nCode>=1912 && nCode<=1920)
3776         {
3777             strPinyin="CHAO";
3778             break;
3779         }
3780         if(nCode>=1921 && nCode<=1926)
3781         {
3782             strPinyin="CHE";
3783             break;
3784         }
3785         if(nCode>=1927 && nCode<=1936)
3786         {
3787             strPinyin="CHEN";
3788             break;
3789         }
3790         if(nCode>=1937 && nCode<=1951)
3791         {
3792             strPinyin="CHENG";
3793             break;
3794         }
3795         if(nCode>=1952 && nCode<=1967)
3796         {
3797             strPinyin="CHI";
3798             break;
3799         }
3800         if(nCode>=1968 && nCode<=1972)
3801         {
3802             strPinyin="CHONG";
3803             break;
3804         }
3805         if(nCode>=1973 && nCode<=1984)
3806         {
3807             strPinyin="CHOU";
3808             break;
3809         }
3810         if(nCode>=1985 && nCode<=2006)
3811         {
3812             strPinyin="CHU";
3813             break;
3814         }
3815         if(nCode==2007)
3816         {
3817             strPinyin="CHUAI";
3818             break;
3819         }
3820         if(nCode>=2008 && nCode<=2014)
3821         {
3822             strPinyin="CHUAN";
3823             break;
3824         }
3825         if(nCode>=2015 && nCode<=2020)
3826         {
3827             strPinyin="CHUANG";
3828             break;
3829         }
3830         if(nCode>=2021 && nCode<=2025)
3831         {
3832             strPinyin="CHUI";
3833             break;
3834         }
3835         if(nCode>=2026 && nCode<=2032)
3836         {
3837             strPinyin="CHUN";
3838             break;
3839         }
3840         if(nCode>=2033 && nCode<=2034)
3841         {
3842             strPinyin="CHUO";
3843             break;
3844         }
3845         if(nCode>=2035 && nCode<=2046)
3846         {
3847             strPinyin="CI";
3848             break;
3849         }
3850         if(nCode>=2047 && nCode<=2052)
3851         {
3852             strPinyin="CONG";
3853             break;
3854         }
3855         if(nCode>=2054 && nCode<=2057)
3856         {
3857             strPinyin="CU";
3858             break;
3859         }
3860         if(nCode>=2058 && nCode<=2060)
3861         {
3862             strPinyin="CUAN";
3863             break;
3864         }
3865         if(nCode>=2061 && nCode<=2068)
3866         {
3867             strPinyin="CUI";
3868             break;
3869         }
3870         if(nCode>=2069 && nCode<=2071)
3871         {
3872             strPinyin="CUN";
3873             break;
3874         }
3875         if(nCode>=2072 && nCode<=2077)
3876         {
3877             strPinyin="CUO";
3878             break;
3879         }
3880         if(nCode>=2078 && nCode<=2083)
3881         {
3882             strPinyin="DA";
3883             break;
3884         }
3885         if(nCode>=2084 && nCode<=2094)
3886         {
3887             strPinyin="DAI";
3888             break;
3889         }
3890         if(nCode>=2102 && nCode<=2116)
3891         {
3892             strPinyin="DAN";
3893             break;
3894         }
3895         if(nCode>=2117 && nCode<=2121)
3896         {
3897             strPinyin="DANG";
3898             break;
3899         }
3900         if(nCode>=2122 && nCode<=2133)
3901         {
3902             strPinyin="DAO";
3903             break;
3904         }
3905         if(nCode>=2134 && nCode<=2136)
3906         {
3907             strPinyin="DE";
3908             break;
3909         }
3910         if(nCode>=2137 && nCode<=2143)
3911         {
3912             strPinyin="DENG";
3913             break;
3914         }
3915         if(nCode>=2144 && nCode<=2162)
3916         {
3917             strPinyin="DI";
3918             break;
3919         }
3920         if(nCode>=2163 && nCode<=2178)
3921         {
3922             strPinyin="DIAN";
3923             break;
3924         }
3925         if(nCode>=2179 && nCode<=2187)
3926         {
3927             strPinyin="DIAO";
3928             break;
3929         }
3930         if(nCode>=2188 && nCode<=2194)
3931         {
3932             strPinyin="DIE";
3933             break;
3934         }
3935         if(nCode>=2201 && nCode<=2209)
3936         {
3937             strPinyin="DING";
3938             break;
3939         }
3940         if(nCode==2210)
3941         {
3942             strPinyin="DIU";
3943             break;
3944         }
3945         if(nCode>=2211 && nCode<=2220)
3946         {
3947             strPinyin="DONG";
3948             break;
3949         }
3950         if(nCode>=2221 && nCode<=2227)
3951         {
3952             strPinyin="DOU";
3953             break;
3954         }
3955         if(nCode>=2228 && nCode<=2242)
3956         {
3957             strPinyin="DU";
3958             break;
3959         }
3960         if(nCode>=2243 && nCode<=2248)
3961         {
3962             strPinyin="DUAN";
3963             break;
3964         }
3965         if(nCode>=2249 && nCode<=2252)
3966         {
3967             strPinyin="DUI";
3968             break;
3969         }
3970         if(nCode>=2253 && nCode<=2261)
3971         {
3972             strPinyin="DUN";
3973             break;
3974         }
3975         if(nCode>=2262 && nCode<=2273)
3976         {
3977             strPinyin="DUO";
3978             break;
3979         }
3980         if(nCode>=2274 && nCode<=2286)
3981         {
3982             strPinyin="E";
3983             break;
3984         }
3985         if(nCode==2287)
3986         {
3987             strPinyin="EN";
3988             break;
3989         }
3990         if(nCode>=2288 && nCode<=2231)
3991         {
3992             strPinyin="ER";
3993             break;
3994         }
3995         if(nCode>=2302 && nCode<=2309)
3996         {
3997             strPinyin="FA";
3998             break;
3999         }
4000         if(nCode>=2310 && nCode<=2326)
4001         {
4002             strPinyin="FAN";
4003             break;
4004         }
4005         if(nCode>=2327 && nCode<=2337)
4006         {
4007             strPinyin="FANG";
4008             break;
4009         }
4010         if(nCode>=2338 && nCode<=2349)
4011         {
4012             strPinyin="FEI";
4013             break;
4014         }
4015         if(nCode>=2350 && nCode<=2364)
4016         {
4017             strPinyin="FEN";
4018             break;
4019         }
4020         if(nCode>=2365 && nCode<=2379)
4021         {
4022             strPinyin="FENG";
4023             break;
4024         }
4025         if(nCode==2380)
4026         {
4027             strPinyin="FO";
4028             break;
4029         }
4030         if(nCode==2381)
4031         {
4032             strPinyin="FOU";
4033             break;
4034         }
4035         if(nCode>=2382 && nCode<=2432)
4036         {
4037             strPinyin="FU";
4038             break;
4039         }
4040         if(nCode>=2435 && nCode<=2440)
4041         {
4042             strPinyin="GAI";
4043             break;
4044         }
4045         if(nCode>=2441 && nCode<=2451)
4046         {
4047             strPinyin="GAN";
4048             break;
4049         }
4050         if(nCode>=2452 && nCode<=2460)
4051         {
4052             strPinyin="GANG";
4053             break;
4054         }
4055         if(nCode>=2461 && nCode<=2470)
4056         {
4057             strPinyin="GAO";
4058             break;
4059         }
4060         if(nCode>=2471 && nCode<=2487)
4061         {
4062             strPinyin="GE";
4063             break;
4064         }
4065         if(nCode==2488)
4066         {
4067             strPinyin="GEI";
4068             break;
4069         }
4070         if(nCode>=2489 && nCode<=2490)
4071         {
4072             strPinyin="GEN";
4073             break;
4074         }
4075         if(nCode>=2491 && nCode<=2503)
4076         {
4077             strPinyin="GENG";
4078             break;
4079         }
4080         if(nCode>=2504 && nCode<=2518)
4081         {
4082             strPinyin="GONG";
4083             break;
4084         }
4085         if(nCode>=2519 && nCode<=2527)
4086         {
4087             strPinyin="GOU";
4088             break;
4089         }
4090         if(nCode>=2528 && nCode<=2545)
4091         {
4092             strPinyin="GU";
4093             break;
4094         }
4095         if(nCode>=2546 && nCode<=2551)
4096         {
4097             strPinyin="GUA";
4098             break;
4099         }
4100         if(nCode>=2552 && nCode<=2554)
4101         {
4102             strPinyin="GUAI";
4103             break;
4104         }
4105         if(nCode>=2555 && nCode<=2565)
4106         {
4107             strPinyin="GUAN";
4108             break;
4109         }
4110         if(nCode>=2566 && nCode<=2568)
4111         {
4112             strPinyin="GUANG";
4113             break;
4114         }
4115         if(nCode>=2569 && nCode<=2584)
4116         {
4117             strPinyin="GUI";
4118             break;
4119         }
4120         if(nCode>=2585 && nCode<=2587)
4121         {
4122             strPinyin="GUN";
4123             break;
4124         }
4125         if(nCode>=2588 && nCode<=2593)
4126         {
4127             strPinyin="GUO";
4128             break;
4129         }
4130         if(nCode==2594)
4131         {
4132             strPinyin="HA";
4133             break;
4134         }
4135         if(nCode>=2601 && nCode<=2607)
4136         {
4137             strPinyin="HAI";
4138             break;
4139         }
4140         if(nCode>=2608 && nCode<=2626)
4141         {
4142             strPinyin="HAN";
4143             break;
4144         }
4145         if(nCode>=2627 && nCode<=2629)
4146         {
4147             strPinyin="HANG";
4148             break;
4149         }
4150         if(nCode>=2630 && nCode<=2638)
4151         {
4152             strPinyin="HAO";
4153             break;
4154         }
4155         if(nCode>=2639 && nCode<=2656)
4156         {
4157             strPinyin="HE";
4158             break;
4159         }
4160         if(nCode>=2657 && nCode<=2658)
4161         {
4162             strPinyin="HEI";
4163             break;
4164         }
4165         if(nCode>=2659 && nCode<=2662)
4166         {
4167             strPinyin="HEN";
4168             break;
4169         }
4170         if(nCode>=2663 && nCode<=2667)
4171         {
4172             strPinyin="HENG";
4173             break;
4174         }
4175         if(nCode>=2668 && nCode<=2676)
4176         {
4177             strPinyin="HONG";
4178             break;
4179         }
4180         if(nCode>=2677 && nCode<=2683)
4181         {
4182             strPinyin="HOU";
4183             break;
4184         }
4185         if(nCode>=2684 && nCode<=2707)
4186         {
4187             strPinyin="HU";
4188             break;
4189         }
4190         if(nCode>=2708 && nCode<=2716)
4191         {
4192             strPinyin="HUA";
4193             break;
4194         }
4195         if(nCode>=2717 && nCode<=2721)
4196         {
4197             strPinyin="HUAI";
4198             break;
4199         }
4200         if(nCode>=2722 && nCode<=2735)
4201         {
4202             strPinyin="HUAN";
4203             break;
4204         }
4205         if(nCode>=2736 && nCode<=2749)
4206         {
4207             strPinyin="HUANG";
4208             break;
4209         }
4210         if(nCode>=2750 && nCode<=2770)
4211         {
4212             strPinyin="HUI";
4213             break;
4214         }
4215         if(nCode>=2771 && nCode<=2776)
4216         {
4217             strPinyin="HUN";
4218             break;
4219         }
4220         if(nCode>=2777 && nCode<=2786)
4221         {
4222             strPinyin="HUO";
4223             break;
4224         }
4225         if(nCode>=2787 && nCode<=2845)
4226         {
4227             strPinyin="JI";
4228             break;
4229         }
4230         if(nCode>=2846 && nCode<=2862)
4231         {
4232             strPinyin="JIA";
4233             break;
4234         }
4235         if(nCode>=2863 && nCode<=2908)
4236         {
4237             strPinyin="JIAN";
4238             break;
4239         }
4240         if(nCode>=2909 && nCode<=2921)
4241         {
4242             strPinyin="JIANG";
4243             break;
4244         }
4245         if(nCode>=2922 && nCode<=2949)
4246         {
4247             strPinyin="JIAO";
4248             break;
4249         }
4250         if(nCode>=2950 && nCode<=2976)
4251         {
4252             strPinyin="JIE";
4253             break;
4254         }
4255         if(nCode>=2977 && nCode<=3002)
4256         {
4257             strPinyin="JIN";
4258             break;
4259         }
4260         if(nCode>=3003 && nCode<=3027)
4261         {
4262             strPinyin="JING";
4263             break;
4264         }
4265         if(nCode>=3028 && nCode<=3029)
4266         {
4267             strPinyin="JIONG";
4268             break;
4269         }
4270         if(nCode>=3030 && nCode<=3046)
4271         {
4272             strPinyin="JIU";
4273             break;
4274         }
4275         if(nCode>=3047 && nCode<=3071)
4276         {
4277             strPinyin="JU";
4278             break;
4279         }
4280         if(nCode>=3072 && nCode<=3078)
4281         {
4282             strPinyin="JUAN";
4283             break;
4284         }
4285         if(nCode>=3079 && nCode<=3088)
4286         {
4287             strPinyin="JUE";
4288             break;
4289         }
4290         if(nCode>=3089 && nCode<=3105)
4291         {
4292             strPinyin="JUN";
4293             break;
4294         }
4295         if(nCode>=3106 && nCode<=3109)
4296         {
4297             strPinyin="KA";
4298             break;
4299         }
4300         if(nCode>=3110 && nCode<=3114)
4301         {
4302             strPinyin="KAI";
4303             break;
4304         }
4305         if(nCode>=3115 && nCode<=3120)
4306         {
4307             strPinyin="KAN";
4308             break;
4309         }
4310         if(nCode>=3121 && nCode<=3127)
4311         {
4312             strPinyin="KANG";
4313             break;
4314         }
4315         if(nCode>=3128 && nCode<=3131)
4316         {
4317             strPinyin="KAO";
4318             break;
4319         }
4320         if(nCode>=3132 && nCode<=3146)
4321         {
4322             strPinyin="KE";
4323             break;
4324         }
4325         if(nCode>=3147 && nCode<=3150)
4326         {
4327             strPinyin="KEN";
4328             break;
4329         }
4330         if(nCode>=3151 && nCode<=3152)
4331         {
4332             strPinyin="KENG";
4333             break;
4334         }
4335         if(nCode>=3153 && nCode<=3156)
4336         {
4337             strPinyin="KONG";
4338             break;
4339         }
4340         if(nCode>=3157 && nCode<=3160)
4341         {
4342             strPinyin="KOU";
4343             break;
4344         }
4345         if(nCode>=3161 && nCode<=3167)
4346         {
4347             strPinyin="KU";
4348             break;
4349         }
4350         if(nCode>=3168 && nCode<=3172)
4351         {
4352             strPinyin="KUA";
4353             break;
4354         }
4355         if(nCode>=3173 && nCode<=3176)
4356         {
4357             strPinyin="KUAI";
4358             break;
4359         }
4360         if(nCode>=3177 && nCode<=3178)
4361         {
4362             strPinyin="KUAN";
4363             break;
4364         }
4365         if(nCode>=3179 && nCode<=3186)
4366         {
4367             strPinyin="KUANG";
4368             break;
4369         }
4370         if(nCode>=3187 && nCode<=3203)
4371         {
4372             strPinyin="KUI";
4373             break;
4374         }
4375         if(nCode>=3204 && nCode<=3207)
4376         {
4377             strPinyin="KUN";
4378             break;
4379         }
4380         if(nCode>=3208 && nCode<=3211)
4381         {
4382             strPinyin="KUO";
4383             break;
4384         }
4385         if(nCode>=3212 && nCode<=3218)
4386         {
4387             strPinyin="LA";
4388             break;
4389         }
4390         if(nCode>=3219 && nCode<=3221)
4391         {
4392             strPinyin="LAI";
4393             break;
4394         }
4395         if(nCode>=3222 && nCode<=3236)
4396         {
4397             strPinyin="LAN";
4398             break;
4399         }
4400         if(nCode>=3237 && nCode<=3243)
4401         {
4402             strPinyin="LANG";
4403             break;
4404         }
4405         if(nCode>=3244 && nCode<=3252)
4406         {
4407             strPinyin="LAO";
4408             break;
4409         }
4410         if(nCode>=3253 && nCode<=3254)
4411         {
4412             strPinyin="LE";
4413             break;
4414         }
4415         if(nCode>=3255 && nCode<=3265)
4416         {
4417             strPinyin="LEI";
4418             break;
4419         }
4420         if(nCode>=3266 && nCode<=3268)
4421         {
4422             strPinyin="LENG";
4423             break;
4424         }
4425         if(nCode>=3269 && nCode<=3308)
4426         {
4427             strPinyin="LI";
4428         }
4429         if(nCode==3309)
4430         {
4431             strPinyin="LIA";
4432             break;
4433         }
4434         if(nCode>=3310 && nCode<=3323)
4435         {
4436             strPinyin="LIAN";
4437             break;
4438         }
4439         if(nCode>=3324 && nCode<=3334)
4440         {
4441             strPinyin="LIANG";
4442             break;
4443         }
4444         if(nCode>=3335 && nCode<=3347)
4445         {
4446             strPinyin="LIAO";
4447             break;
4448         }
4449         if(nCode>=3348 && nCode<=3352)
4450         {
4451             strPinyin="LIE";
4452             break;
4453         }
4454         if(nCode>=3353 && nCode<=3363)
4455         {
4456             strPinyin="LIN";
4457             break;
4458         }
4459         if(nCode>=3364 && nCode<=3378)
4460         {
4461             strPinyin="LING";
4462             break;
4463         }
4464         if(nCode>=3379 && nCode<=3389)
4465         {
4466             strPinyin="LIU";
4467             break;
4468         }
4469         if(nCode>=3390 && nCode<=3404)
4470         {
4471             strPinyin="LONG";
4472             break;
4473         }
4474         if(nCode>=3405 && nCode<=3410)
4475         {
4476             strPinyin="LOU";
4477             break;
4478         }
4479         if(nCode>=3411 && nCode<=3444)
4480         {
4481             strPinyin="LU";
4482             break;
4483         }
4484         if(nCode>=3445 && nCode<=3450)
4485         {
4486             strPinyin="LUAN";
4487             break;
4488         }
4489         if(nCode>=3451 && nCode<=3452)
4490         {
4491             strPinyin="LUE";
4492             break;
4493         }
4494         if(nCode>=3453 && nCode<=3459)
4495         {
4496             strPinyin="LUN";
4497             break;
4498         }
4499         if(nCode>=3460 && nCode<=3471)
4500         {
4501             strPinyin="LUO";
4502             break;
4503         }
4504         if(nCode>=3472 && nCode<=3480)
4505         {
4506             strPinyin="MA";
4507             break;
4508         }
4509         if(nCode>=3481 && nCode<=3486)
4510         {
4511             strPinyin="MAI";
4512             break;
4513         }
4514         if(nCode>=3487 && nCode<=3501)
4515         {
4516             strPinyin="MAN";
4517             break;
4518         }
4519         if(nCode>=3502 && nCode<=3507)
4520         {
4521             strPinyin="MANG";
4522             break;
4523         }
4524         if(nCode>=3508 && nCode<=3519)
4525         {
4526             strPinyin="MAO";
4527             break;
4528         }
4529         if(nCode==3520)
4530         {
4531             strPinyin="ME";
4532             break;
4533         }
4534         if(nCode>=3521 && nCode<=3536)
4535         {
4536             strPinyin="MEI";
4537             break;
4538         }
4539         if(nCode>=3537 && nCode<=3539)
4540         {
4541             strPinyin="MEN";
4542             break;
4543         }
4544         if(nCode>=3540 && nCode<=3547)
4545         {
4546             strPinyin="MENG";
4547             break;
4548         }
4549         if(nCode>=3548 && nCode<=3561)
4550         {
4551             strPinyin="MI";
4552         }
4553         if(nCode>=3562 && nCode<=3570)
4554         {
4555             strPinyin="MIAN";
4556             break;
4557         }
4558         if(nCode>=3571 && nCode<=3578)
4559         {
4560             strPinyin="MIAO";
4561             break;
4562         }
4563         if(nCode>=3579 && nCode<=3580)
4564         {
4565             strPinyin="MIE";
4566             break;
4567         }
4568         if(nCode>=3581 && nCode<=3586)
4569         {
4570             strPinyin="MIN";
4571             break;
4572         }
4573         if(nCode>=3587 && nCode<=3592)
4574         {
4575             strPinyin="MING";
4576             break;
4577         }
4578         if(nCode==3593)
4579         {
4580             strPinyin=="MIU";
4581             break;
4582         }
4583         if(nCode>=3594 && nCode<=3616)
4584         {
4585             strPinyin="MO";
4586             break;
4587         }
4588         if(nCode>=3617 && nCode<=3619)
4589         {
4590             strPinyin="MOU";
4591             break;
4592         }
4593         if(nCode>=3620 && nCode<=3634)
4594         {
4595             strPinyin="MU";
4596             break;
4597         }
4598         if(nCode>=3635 && nCode<=3641)
4599         {
4600             strPinyin="NA";
4601             break;
4602         }
4603         if(nCode>=3642 && nCode<=3646)
4604         {
4605             strPinyin="NAI";
4606             break;
4607         }
4608         if(nCode>=3647 && nCode<=3649)
4609         {
4610             strPinyin="NAN";
4611             break;
4612         }
4613         if(nCode==3650)
4614         {
4615             strPinyin="NANG";
4616             break;
4617         }
4618         if(nCode>=3651 && nCode<=3655)
4619         {
4620             strPinyin="NAO";
4621             break;
4622         }
4623         if(nCode==3656)
4624         {
4625             strPinyin="NE";
4626             break;
4627         }
4628         if(nCode>=3657 && nCode<=3658)
4629         {
4630             strPinyin="NEI";
4631             break;
4632         }
4633         if(nCode==3659)
4634         {
4635             strPinyin="NEN";
4636             break;
4637         }
4638         if(nCode==3660)
4639         {
4640             strPinyin="NENG";
4641             break;
4642         }
4643         if(nCode>=3661 && nCode<=3671)
4644         {
4645             strPinyin="NI";
4646             break;
4647         }
4648         if(nCode>=3672 && nCode<=3678)
4649         {
4650             strPinyin="NIAN";
4651             break;
4652         }
4653         if(nCode>=3679 && nCode<=3680)
4654         {
4655             strPinyin="NIANG";
4656             break;
4657         }
4658         if(nCode>=3681 && nCode<=3682)
4659         {
4660             strPinyin="NIAO";
4661             break;
4662         }
4663         if(nCode>=3683 && nCode<=3689)
4664         {
4665             strPinyin="NIE";
4666             break;
4667         }
4668         if(nCode==3690)
4669         {
4670             strPinyin="NIN";
4671             break;
4672         }
4673         if(nCode>=3691 && nCode<=3702)
4674         {
4675             strPinyin="NING";
4676             break;
4677         }
4678         if(nCode>=3703 && nCode<=3706)
4679         {
4680             strPinyin="NIU";
4681             break;
4682         }
4683         if(nCode>=3707 && nCode<=3710)
4684         {
4685             strPinyin="NONG";
4686             break;
4687         }
4688         if(nCode>=3711 && nCode<=3714)
4689         {
4690             strPinyin="NU";
4691             break;
4692         }
4693         if(nCode==3715)
4694         {
4695             strPinyin="NUAN";
4696             break;
4697         }
4698         if(nCode>=3716 && nCode<=3717)
4699         {
4700             strPinyin="NUE";
4701             break;
4702         }
4703         if(nCode>=3718 && nCode<=3721)
4704         {
4705             strPinyin="NUO";
4706             break;
4707         }
4708         if(nCode==3722)
4709         {
4710             strPinyin="O";
4711             break;
4712         }
4713         if(nCode>=3723 && nCode<=3729)
4714         {
4715             strPinyin="OU";
4716             break;
4717         }
4718         if(nCode>=3730 && nCode<=3735)
4719         {
4720             strPinyin="PA";
4721             break;
4722         }
4723         if(nCode>=3736 && nCode<=3741)
4724         {
4725             strPinyin="PAI";
4726             break;
4727         }
4728         if(nCode>=3742 && nCode<=3749)
4729         {
4730             strPinyin="PAN";
4731             break;
4732         }
4733         if(nCode>=3750 && nCode<=3754)
4734         {
4735             strPinyin="PANG";
4736             break;
4737         }
4738         if(nCode>=3755 && nCode<=3761)
4739         {
4740             strPinyin="PAO";
4741             break;
4742         }
4743         if(nCode>=3762 && nCode<=3770)
4744         {
4745             strPinyin="PEI";
4746             break;
4747         }
4748         if(nCode>=3771 && nCode<=3772)
4749         {
4750             strPinyin="PEN";
4751             break;
4752         }
4753         if(nCode>=3773 && nCode<=3786)
4754         {
4755             strPinyin="PENG";
4756             break;
4757         }
4758         if(nCode>=3787 && nCode<=3809)
4759         {
4760             strPinyin="PI";
4761             break;
4762         }
4763         if(nCode>=3810 && nCode<=3813)
4764         {
4765             strPinyin="PIAN";
4766             break;
4767         }
4768         if(nCode>=3814 && nCode<=3817)
4769         {
4770             strPinyin="PIAO";
4771             break;
4772         }
4773         if(nCode>=3818 && nCode<=3819)
4774         {
4775             strPinyin="PIE";
4776             break;
4777         }
4778         if(nCode>=3820 && nCode<=3824)
4779         {
4780             strPinyin="PIN";
4781             break;
4782         }
4783         if(nCode>=3825 && nCode<=3833)
4784         {
4785             strPinyin="PING";
4786             break;
4787         }
4788         if(nCode>=3834 && nCode<=3841)
4789         {
4790             strPinyin="PO";
4791             break;
4792         }
4793         if(nCode==3842)
4794         {
4795             strPinyin="POU";
4796             break;
4797         }
4798         if(nCode>=3843 && nCode<=3857)
4799         {
4800             strPinyin="PU";
4801             break;
4802         }
4803         if(nCode>=3858 && nCode<=3893)
4804         {
4805             strPinyin="QI";
4806             break;
4807         }
4808         if(nCode==3894||nCode>=3901 && nCode<=3902)
4809         {
4810             strPinyin="QIA";
4811             break;
4812         }
4813         if(nCode>=3903 && nCode<=3924)
4814         {
4815             strPinyin="QIAN";
4816             break;
4817         }
4818         if(nCode>=3925 && nCode<=3932)
4819         {
4820             strPinyin="QIANG";
4821             break;
4822         }
4823         if(nCode>=3933 && nCode<=3947)
4824         {
4825             strPinyin="QIAO";
4826             break;
4827         }
4828         if(nCode>=3948 && nCode<=3952)
4829         {
4830             strPinyin="QIE";
4831             break;
4832         }
4833         if(nCode>=3953 && nCode<=3963)
4834         {
4835             strPinyin="QIN";
4836             break;
4837         }
4838         if(nCode>=3964 && nCode<=3976)
4839         {
4840             strPinyin="QING";
4841             break;
4842         }
4843         if(nCode>=3977 && nCode<=3978)
4844         {
4845             strPinyin="QIONG";
4846             break;
4847         }
4848         if(nCode>=3979 && nCode<=3986)
4849         {
4850             strPinyin="QIU";
4851             break;
4852         }
4853         if(nCode>=3987 && nCode<=4005)
4854         {
4855             strPinyin="QU";
4856             break;
4857         }
4858         if(nCode>=4006 && nCode<=4016)
4859         {
4860             strPinyin="QUAN";
4861             break;
4862         }
4863         if(nCode>=4017 && nCode<=4024)
4864         {
4865             strPinyin="QUE";
4866             break;
4867         }
4868         if(nCode>=4025 && nCode<=4026)
4869         {
4870             strPinyin="QUN";
4871             break;
4872         }
4873         if(nCode>=4027 && nCode<=4030)
4874         {
4875             strPinyin="RAN";
4876             break;
4877         }
4878         if(nCode>=4031 && nCode<=4035)
4879         {
4880             strPinyin="RANG";
4881         }
4882         if(nCode>=4036 && nCode<=4038)
4883         {
4884             strPinyin="RAO";
4885             break;
4886         }
4887         if(nCode>=4039 && nCode<=4040)
4888         {
4889             strPinyin="RE";
4890             break;
4891         }
4892         if(nCode>=4041 && nCode<=4050)
4893         {
4894             strPinyin="REN";
4895             break;
4896         }
4897         if(nCode>=4051 && nCode<=4052)
4898         {
4899             strPinyin="RENG";
4900             break;
4901         }
4902         if(nCode==4053)
4903         {
4904             strPinyin="RI";
4905             break;
4906         }
4907         if(nCode>=4054 && nCode<=4063)
4908         {
4909             strPinyin="RONG";
4910             break;
4911         }
4912         if(nCode>=4064 && nCode<=4066)
4913         {
4914             strPinyin="ROU";
4915             break;
4916         }
4917         if(nCode>=4067 && nCode<=4076)
4918         {
4919             strPinyin="RU";
4920             break;
4921         }
4922         if(nCode>=4077 && nCode<=4078)
4923         {
4924             strPinyin="RUAN";
4925             break;
4926         }
4927         if(nCode>=4079 && nCode<=4081)
4928         {
4929             strPinyin="RUI";
4930             break;
4931         }
4932         if(nCode>=4082 && nCode<=4083)
4933         {
4934             strPinyin="RUN";
4935             break;
4936         }
4937         if(nCode>=4084 && nCode<=4085)
4938         {
4939             strPinyin="RUO";
4940             break;
4941         }
4942         if(nCode>=4086 && nCode<=4088)
4943         {
4944             strPinyin="SA";
4945             break;
4946         }
4947         if(nCode>=4089 && nCode<=4092)
4948         {
4949             strPinyin="SAI";
4950             break;
4951         }
4952         if(nCode>=4093 && nCode<=4094)
4953         {
4954             strPinyin="SAN";
4955             break;
4956         }
4957         if(nCode>=4101 && nCode<=4102)
4958         {
4959             strPinyin="SAN";
4960             break;
4961         }
4962         if(nCode>=4103 && nCode<=4105)
4963         {
4964             strPinyin="SANG";
4965             break;
4966         }
4967         if(nCode>=4106 && nCode<=4109)
4968         {
4969             strPinyin="SAO";
4970             break;
4971         }
4972         if(nCode>=4110 && nCode<=4112)
4973         {
4974             strPinyin="SE";
4975             break;
4976         }
4977         if(nCode==4113)
4978         {
4979             strPinyin="SEN";
4980         }
4981         if(nCode==4114)
4982         {
4983             strPinyin="SENG";
4984             break;
4985         }
4986         if(nCode>=4115 && nCode<=4123)
4987         {
4988             strPinyin="SHA";
4989             break;
4990         }
4991         if(nCode>=4124 && nCode<=4125)
4992         {
4993             strPinyin="SHAI";
4994             break;
4995         }
4996         if(nCode>=4126 && nCode<=4141)
4997         {
4998             strPinyin="SHAN";
4999             break;
5000         }
5001         if(nCode>=4142 && nCode<=4149)
5002         {
5003             strPinyin="SHANG";
5004             break;
5005         }
5006         if(nCode>=4150 && nCode<=4160)
5007         {
5008             strPinyin="SHAO";
5009             break;
5010         }
5011         if(nCode>=4161 && nCode<=4172)
5012         {
5013             strPinyin="SHE";
5014             break;
5015         }
5016         if(nCode>=4173 && nCode<=4188)
5017         {
5018             strPinyin="SHEN";
5019             break;
5020         }
5021         if(nCode>=4189 && nCode<=4205)
5022         {
5023             strPinyin="SHENG";
5024             break;
5025         }
5026         if(nCode>=4206 && nCode<=4252)
5027         {
5028             strPinyin="SHI";
5029             break;
5030         }
5031         if(nCode>=4253 && nCode<=4262)
5032         {
5033             strPinyin="SHOU";
5034             break;
5035         }
5036         if(nCode>=4263 && nCode<=4301)
5037         {
5038             strPinyin="SHU";
5039             break;
5040         }
5041         if(nCode>=4302 && nCode<=4303)
5042         {
5043             strPinyin="SHUA";
5044             break;
5045         }
5046         if(nCode>=4304 && nCode<=4307)
5047         {
5048             strPinyin="SHUAI";
5049             break;
5050         }
5051         if(nCode>=4308 && nCode<=4309)
5052         {
5053             strPinyin="SHUAN";
5054             break;
5055         }
5056         if(nCode>=4310 && nCode<=4312)
5057         {
5058             strPinyin="SHUANG";
5059             break;
5060         }
5061         if(nCode>=4313 && nCode<=4316)
5062         {
5063             strPinyin="SHUI";
5064             break;
5065         }
5066         if(nCode>=4317 && nCode<=4320)
5067         {
5068             strPinyin="SHUN";
5069             break;
5070         }
5071         if(nCode>=4321 && nCode<=4324)
5072         {
5073             strPinyin="SHUO";
5074             break;
5075         }
5076         if(nCode>=4325 && nCode<=4340)
5077         {
5078             strPinyin="SI";
5079             break;
5080         }
5081         if(nCode>=4341 && nCode<=4348)
5082         {
5083             strPinyin="SONG";
5084             break;
5085         }
5086         if(nCode>=4349 && nCode<=4352)
5087         {
5088             strPinyin="SOU";
5089             break;
5090         }
5091         if(nCode>=4353 && nCode<=4364)
5092         {
5093             strPinyin="SU";
5094             break;
5095         }
5096         if(nCode>=4365 && nCode<=4367)
5097         {
5098             strPinyin="SUAN";
5099             break;
5100         }
5101         if(nCode>=4368 && nCode<=4378)
5102         {
5103             strPinyin="SUI";
5104             break;
5105         }
5106         if(nCode>=4379 && nCode<=4381)
5107         {
5108             strPinyin="SUN";
5109             break;
5110         }
5111         if(nCode>=4382 && nCode<=4389)
5112         {
5113             strPinyin="SUO";
5114             break;
5115         }
5116         if(nCode>=4390 && nCode<=4404)
5117         {
5118             strPinyin="TA";
5119             break;
5120         }
5121         if(nCode>=4405 && nCode<=4413)
5122         {
5123             strPinyin="TAI";
5124             break;
5125         }
5126         if(nCode>=4414 && nCode<=4431)
5127         {
5128             strPinyin="TAN";
5129             break;
5130         }
5131         if(nCode>=4432 && nCode<=4444)
5132         {
5133             strPinyin="TANG";
5134             break;
5135         }
5136         if(nCode>=4445 && nCode<=4455)
5137         {
5138             strPinyin="TAO";
5139             break;
5140         }
5141         if(nCode==4456)
5142         {
5143             strPinyin="TE";
5144             break;
5145         }
5146         if(nCode>=4457 && nCode<=4460)
5147         {
5148             strPinyin="TENG";
5149             break;
5150         }
5151         if(nCode>=4461 && nCode<=4475)
5152         {
5153             strPinyin="TI";
5154             break;
5155         }
5156         if(nCode>=4476 && nCode<=4483)
5157         {
5158             strPinyin="TIAN";
5159             break;
5160         }
5161         if(nCode>=4484 && nCode<=4488)
5162         {
5163             strPinyin="TIAO";
5164             break;
5165         }
5166         if(nCode>=4489 && nCode<=4491)
5167         {
5168             strPinyin="TIE";
5169             break;
5170         }
5171         if(nCode>=4492 && nCode<=4507)
5172         {
5173             strPinyin="TING";
5174             break;
5175         }
5176         if(nCode>=4508 && nCode<=4520)
5177         {
5178             strPinyin="TONG";
5179             break;
5180         }
5181         if(nCode>=4521 && nCode<=4524)
5182         {
5183             strPinyin="TOU";
5184             break;
5185         }
5186         if(nCode>=4525 && nCode<=4535)
5187         {
5188             strPinyin="TU";
5189             break;
5190         }
5191         if(nCode>=4536 && nCode<=4537)
5192         {
5193             strPinyin="TUAN";
5194             break;
5195         }
5196         if(nCode>=4538 && nCode<=4543)
5197         {
5198             strPinyin="TUI";
5199             break;
5200         }
5201         if(nCode>=4544 && nCode<=4546)
5202         {
5203             strPinyin="TUN";
5204             break;
5205         }
5206         if(nCode>=4547 && nCode<=4557)
5207         {
5208             strPinyin="TUO";
5209             break;
5210         }
5211         if(nCode>=4558 && nCode<=4564)
5212         {
5213             strPinyin="WA";
5214             break;
5215         }
5216         if(nCode>=4565 && nCode<=4566)
5217         {
5218             strPinyin="WAI";
5219             break;
5220         }
5221         if(nCode>=4567 && nCode<=4583)
5222         {
5223             strPinyin="WAN";
5224             break;
5225         }
5226         if(nCode>=4584 && nCode<=4593)
5227         {
5228             strPinyin="WANG";
5229             break;
5230         }
5231         if(nCode>=4594 && nCode<=4632)
5232         {
5233             strPinyin="WEI";
5234             break;
5235         }
5236         if(nCode>=4633 && nCode<=4642)
5237         {
5238             strPinyin="WEN";
5239             break;
5240         }
5241         if(nCode>=4643 && nCode<=4645)
5242         {
5243             strPinyin="WENG";
5244             break;
5245         }
5246         if(nCode>=4646 && nCode<=4654)
5247         {
5248             strPinyin="WO";
5249             break;
5250         }
5251         if(nCode>=4655 && nCode<=4683)
5252         {
5253             strPinyin="WU";
5254             break;
5255         }
5256         if(nCode>=4684 && nCode<=4724)
5257         {
5258             strPinyin="XI";
5259             break;
5260         }
5261         if(nCode>=4725 && nCode<=4737)
5262         {
5263             strPinyin="XIA";
5264             break;
5265         }
5266         if(nCode>=4738 && nCode<=4763)
5267         {
5268             strPinyin="XIAN";
5269             break;
5270         }
5271         if(nCode>=4764 && nCode<=4783)
5272         {
5273             strPinyin="XIANG";
5274             break;
5275         }
5276         if(nCode>=4784 && nCode<=4807)
5277         {
5278             strPinyin="XIAO";
5279             break;
5280         }
5281         if(nCode>=4809 && nCode<=4828)
5282         {
5283             strPinyin="XIE";
5284             break;
5285         }
5286         if(nCode>=4829 && nCode<=4838)
5287         {
5288             strPinyin="XIN";
5289             break;
5290         }
5291         if(nCode>=4839 && nCode<=4853)
5292         {
5293             strPinyin="XING";
5294             break;
5295         }
5296         if(nCode>=4854 && nCode<=4860)
5297         {
5298             strPinyin="XIONG";
5299             break;
5300         }
5301         if(nCode>=4861 && nCode<=4869)
5302         {
5303             strPinyin="XIU";
5304             break;
5305         }
5306         if(nCode>=4870 && nCode<=4888)
5307         {
5308             strPinyin="XU";
5309             break;
5310         }
5311         if(nCode>=4889 && nCode<=4904)
5312         {
5313             strPinyin="XUAN";
5314             break;
5315         }
5316         if(nCode>=4905 && nCode<=4910)
5317         {
5318             strPinyin="XUE";
5319             break;
5320         }
5321         if(nCode>=4911 && nCode<=4924)
5322         {
5323             strPinyin="XUN";
5324             break;
5325         }
5326         if(nCode>=4925 && nCode<=4940)
5327         {
5328             strPinyin="YA";
5329             break;
5330         }
5331         if(nCode>=4941 && nCode<=4973)
5332         {
5333             strPinyin="YAN";
5334             break;
5335         }
5336         if(nCode>=4974 && nCode<=4990)
5337         {
5338             strPinyin="YANG";
5339             break;
5340         }
5341         if(nCode>=4991 && nCode<=5011)
5342         {
5343             strPinyin="YAO";
5344             break;
5345         }
5346         if(nCode>=5012 && nCode<=5026)
5347         {
5348             strPinyin="YE";
5349             break;
5350         }
5351         if(nCode>=5027 && nCode<=5079)
5352         {
5353             strPinyin="YI";
5354             break;
5355         }
5356         if(nCode>=5080 && nCode<=5101)
5357         {
5358             strPinyin="YIN";
5359             break;
5360         }
5361         if(nCode>=5102 && nCode<=5119)
5362         {
5363             strPinyin="YING";
5364             break;
5365         }
5366         if(nCode==5120)
5367         {
5368             strPinyin="YO";
5369             break;
5370         }
5371         if(nCode>=5121 && nCode<=5135)
5372         {
5373             strPinyin="YONG";
5374             break;
5375         }
5376         if(nCode>=5136 && nCode<=5155)
5377         {
5378             strPinyin="YOU";
5379             break;
5380         }
5381         if(nCode>=5156 && nCode<=5206)
5382         {
5383             strPinyin="YU";
5384             break;
5385         }
5386         if(nCode>=5207 && nCode<=5226)
5387         {
5388             strPinyin="YUAN";
5389             break;
5390         }
5391         if(nCode>=5227 && nCode<=5236)
5392         {
5393             strPinyin="YUE";
5394             break;
5395         }
5396         if(nCode>=5237 && nCode<=5248)
5397         {
5398             strPinyin="YUN";
5399             break;
5400         }
5401         if(nCode>=5249 && nCode<=5251)
5402         {
5403             strPinyin="ZA";
5404             break;
5405         }
5406         if(nCode>=5252 && nCode<=5258)
5407         {
5408             strPinyin="ZAI";
5409             break;
5410         }
5411         if(nCode>=5259 && nCode<=5262)
5412         {
5413             strPinyin="ZAN";
5414             break;
5415         }
5416         if(nCode>=5263 && nCode<=5265)
5417         {
5418             strPinyin="ZANG";
5419             break;
5420         }
5421         if(nCode>=5266 && nCode<=5279)
5422         {
5423             strPinyin="ZAO";
5424             break;
5425         }
5426         if(nCode>=5280 && nCode<=5283)
5427         {
5428             strPinyin="ZE";
5429             break;
5430         }
5431         if(nCode==5284)
5432         {
5433             strPinyin="ZEI";
5434             break;
5435         }
5436         if(nCode==5285)
5437         {
5438             strPinyin="ZEN";
5439             break;
5440         }
5441         if(nCode>=5286 && nCode<=5289)
5442         {
5443             strPinyin="ZENG";
5444             break;
5445         }
5446         if(nCode>=5290 && nCode<=5309)
5447         {
5448             strPinyin="ZHA";
5449             break;
5450         }
5451         if(nCode>=5310 && nCode<=5315)
5452         {
5453             strPinyin="ZHAI";
5454             break;
5455         }
5456         if(nCode>=5316 && nCode<=5332)
5457         {
5458             strPinyin="ZHAN";
5459             break;
5460         }
5461         if(nCode>=5333 && nCode<=5347)
5462         {
5463             strPinyin="ZHANG";
5464             break;
5465         }
5466         if(nCode>=5348 && nCode<=5357)
5467         {
5468             strPinyin="ZHAO";
5469             break;
5470         }
5471         if(nCode>=5358 && nCode<=5367)
5472         {
5473             strPinyin="ZHE";
5474             break;
5475         }
5476         if(nCode>=5368 && nCode<=5383)
5477         {
5478             strPinyin="ZHEN";
5479             break;
5480         }
5481         if(nCode>=5384 && nCode<=5404)
5482         {
5483             strPinyin="ZHENG";
5484             break;
5485         }
5486         if(nCode>=5405 && nCode<=5447)
5487         {
5488             strPinyin="ZHI";
5489             break;
5490         }
5491         if(nCode>=5448 && nCode<=5458)
5492         {
5493             strPinyin="ZHONG";
5494             break;
5495         }
5496         if(nCode>=5459 && nCode<=5472)
5497         {
5498             strPinyin="ZHOU";
5499             break;
5500         }
5501         if(nCode>=5473 && nCode<=5504)
5502         {
5503             strPinyin="ZHU";
5504             break;
5505         }
5506         if(nCode>=5505 && nCode<=5506)
5507         {
5508             strPinyin="ZHUA";
5509             break;
5510         }
5511         if(nCode==5507)
5512         {
5513             strPinyin="ZHUAI";
5514             break;
5515         }
5516         if(nCode>=5508 && nCode<=5513)
5517         {
5518             strPinyin="ZHUAN";
5519             break;
5520         }
5521         if(nCode>=5514 && nCode<=5520)
5522         {
5523             strPinyin="ZHUANG";
5524             break;
5525         }
5526         if(nCode>=5521 && nCode<=5526)
5527         {
5528             strPinyin="ZHUI";
5529             break;
5530         }
5531         if(nCode>=5527 && nCode<=5528)
5532         {
5533             strPinyin="ZHUN";
5534             break;
5535         }
5536         if(nCode>=5529 && nCode<=5539)
5537         {
5538             strPinyin="ZHUO";
5539             break;
5540         }
5541         if(nCode>=5540 && nCode<=5554)
5542         {
5543             strPinyin="ZI";
5544             break;
5545         }
5546         if(nCode>=5555 && nCode<=5561)
5547         {
5548             strPinyin="ZONG";
5549             break;
5550         }
5551         if(nCode>=5562 && nCode<=5565)
5552         {
5553             strPinyin="ZOU";
5554             break;
5555         }
5556         if(nCode>=5566 && nCode<=5573)
5557         {
5558             strPinyin="ZU";
5559             break;
5560         }
5561         if(nCode>=5574 && nCode<=5575)
5562         {
5563             strPinyin="ZUAN";
5564             break;
5565         }
5566         if(nCode>=5576 && nCode<=5579)
5567         {
5568             strPinyin="ZUI";
5569             break;
5570         }
5571         if(nCode>=5580 && nCode<=5581)
5572         {
5573             strPinyin="ZUN";
5574             break;
5575         }
5576         if(nCode>=5582 && nCode<=5589)
5577         {
5578             strPinyin="ZUO";
5579             break;
5580         }
5581     }
5582     if (strPinyin=="") strPinyin="?";
5583     return strPinyin;
5584 }
5585 std::string HanziToPinyin::hanzi_trans_to_pinyin(const std::string &strHanzi)
5586 {
5587     bool m_blnSimaple=false;
5588     bool m_blnFirstBig=true;
5589     bool m_blnAllBiG=true;
5590     bool m_LetterEnd=false;
5591 
5592     unsigned char ucHigh, ucLow;
5593     int  nCode;
5594     std::string strPinyin="";
5595     for (size_t i=0; i<strHanzi.length(); i++)
5596     {
5597         if ( (unsigned char)strHanzi[i] < 0x80 )
5598         {
5599             strPinyin=strPinyin+strHanzi[i];
5600             if(m_LetterEnd) strPinyin=strPinyin+'\'';
5601             continue;
5602         }
5603         ucHigh = (unsigned char)strHanzi[i];
5604         ucLow  = (unsigned char)strHanzi[i+1];
5605         if ( ucHigh < 0xa1 || ucLow < 0xa1)
5606             continue;
5607         else
5608             nCode = (ucHigh - 0xa0) * 100 + ucLow - 0xa0;
5609         std::string strRes=get_pinyin_by_code(nCode);
5610         if(m_blnSimaple&&strRes.length()>0)
5611         {
5612             strRes=strRes.substr(0, 1);
5613         }
5614         if(!m_blnFirstBig)
5615         {
5616             //strRes.SetAt(0,strRes.GetAt(0)+32);
5617             strRes[0] = strRes[0]+32;
5618         }
5619         if(!m_blnAllBiG)
5620         {
5621             for(size_t j=1;j<strRes.length();j++)
5622             {
5623                 //strRes.SetAt(j,(strRes.GetAt(j)+32));
5624                 strRes[j] = strRes[j] + 32;
5625             }
5626         }
5627         strPinyin=strPinyin+strRes;
5628         i++;
5629         if(m_LetterEnd) strPinyin=strPinyin+'\'';
5630     }
5631     return strPinyin;
5632 }
5633 std::string HanziToPinyin::get_first_pinyin_string(const std::wstring &wstrHanzi)
5634 {
5635     std::string retFistPinyinString;
5636     char retFistPinyin;
5637 
5638     for (size_t i = 0; i < wstrHanzi.length(); ++i)
5639     {
5640         retFistPinyin = get_first_character(g_codetrans()->utf16_to_platform(&wstrHanzi[i]).c_str());
5641         if (0 != retFistPinyin)
5642         {
5643             retFistPinyinString += retFistPinyin;
5644         }
5645         else
5646         {
5647             retFistPinyinString += g_codetrans()->utf16_to_platform(&wstrHanzi[i]);
5648         }
5649     }
5650 
5651     return retFistPinyinString;
5652 }
5653 std::wstring HanziToPinyin::get_first_pinyin_stringw(const std::wstring &wstrHanzi)
5654 {
5655     return g_codetrans()->platform_to_utf16(get_first_pinyin_string(wstrHanzi));
5656 }
5657 
5658 
5659 char HanziToPinyin::get_first_character(const char *pGBK, const size_t nGBK)
5660 {
5661     //int nCode2 = atol(pGBK);//error
5662     //int nCode3 = strtol(pGBK, NULL, 16);//ok
5663     int nCode;
5664     sscanf_s(pGBK, "%x",&nCode); //ok
5665     int areacode[] = { 45217, 45253, 45761, 46318, 46826, 47010, 47297, 47614, 48119, 48119, 49062, 49324, 49896, 50371, 50614, 50622, 50906, 51387, 51446, 52218, 52698, 52698, 52698, 52980, 53689, 54481, 55290 };
5666     for (int i = 0; i < 26; i++)
5667     {
5668         if (areacode[i] <= nCode && nCode < areacode[i + 1])
5669             return (char)('A'+i);
5670     }
5671     return (char)0;
5672 }
5673 bool HanziToPinyin::get_hanzi_code(const char *pChineseCharacter, char *pGBK, const size_t nChineseCharacter, const size_t nGBK)
5674 {
5675     bool is_success = false;
5676 
5677     do 
5678     {
5679         int len = sprintf_s(pGBK, nGBK, "%X%X", (unsigned char)pChineseCharacter[0], (unsigned char)pChineseCharacter[1]);
5680         if (len<0)
5681             return is_success = false;
5682         else
5683             return is_success = true;
5684     } while (false);
5685 
5686     return is_success;
5687 }
View Code

 

代码可能有点长,后面我直接附上源码文件

源码文件,点击这里。

posted @ 2015-03-16 16:52  仙人球球  Views(721)  Comments(1Edit  收藏  举报