用 imegen.exe 可以得到全拼输入法的拼音与汉字对照表,但是在这个文件里有许多容错的输入,比如“伯”字就有 ba, bai, bo, mo 许多种
不想要那些容错的,只要留下正确的多音字就行了。或者不处理多音字,只留一个正确的音也行。但是不一定在文件里第一个出现的就是正确的拼音
请教如何处理

解决方案 »

  1.   

    用笨办法:编一个表Const
      PyGbkList : array[1..3008] of char =(
    'C','J','W','G','N','S','P','G','C','G','N','E','S','Y','P','B','T','Y','Y','Z','D','X','Y','K','Y',
    'G','T','V','J','N','N','J','Q','M','B','S','G','Z','S','C','Y','J','S','Y','Y','V','P','G','K','B',
    'Z','G','Y','V','Y','W','J','K','G','K','L','J','S','W','K','P','J','Q','H','Y','V','W','V','D','Z',
    'L','S','G','M','R','Y','P','Y','W','W','C','C','K','Z','N','K','Y','Y','G','T','T','N','J','J','E',
    'Y','K','K','Z','Y','T','C','J','N','M','C','Y','L','Q','L','Y','P','Y','Q','F','Q','R','P','Z','S',
    'L','W','B','T','G','K','J','F','Y','X','J','W','Z','L','T','B','N','C','X','J','J','J','J','Z','X',
    'D','T','T','S','Q','Z','Y','C','D','X','X','H','G','C','K','V','P','H','F','F','S','S','V','Y','B',
    'G','M','X','L','P','B','Y','L','L','V','H','L','X','S','V','Z','M','V','J','H','S','O','J','N','G',
    'H','D','Z','Q','Y','K','L','G','J','H','S','G','Q','Z','H','X','Q','G','K','E','Z','Z','W','Y','S',
    'C','S','C','J','X','Y','E','Y','X','A','D','Z','P','M','D','S','S','M','Z','J','Z','Q','J','Y','Z',
    'C','V','J','V','W','Q','J','B','D','Z','B','X','G','Z','N','Z','C','P','W','H','K','X','H','Q','K',
    'M','W','F','B','P','B','Y','D','T','J','Z','Z','K','Q','H','Y','L','Y','G','X','F','P','T','Y','J',
    'Y','Y','Z','P','S','Z','L','F','C','H','M','Q','S','H','G','M','X','X','S','X','J','V','V','D','C',
    'S','B','B','Q','B','E','F','S','J','Y','H','X','W','G','Z','K','P','Y','L','Q','B','G','L','D','L',
    'C','C','T','N','M','A','Y','D','D','K','S','S','N','G','Y','C','S','G','X','L','Y','Z','A','Y','B',
    'N','P','T','S','D','K','D','Y','L','H','G','Y','M','Y','L','C','X','P','Y','V','J','N','D','Q','J',
    'W','X','Q','X','F','Y','Y','F','J','L','E','J','P','Z','R','X','C','C','Q','W','Q','Q','S','B','N',
    'K','Y','M','G','P','L','B','M','J','R','Q','C','F','L','N','Y','M','Y','Q','M','S','Q','Y','R','B',
    'C','J','T','H','Z','T','Q','F','R','X','Q','H','X','M','J','J','C','J','L','X','Q','G','J','M','S',
    'H','Z','K','B','S','W','Y','E','M','Y','L','T','X','F','S','Y','D','S','G','L','Y','C','J','Q','X',
    'S','J','N','Q','B','S','C','T','Y','H','B','F','T','D','C','Y','Z','D','J','W','Y','G','H','Q','F',
    'R','X','W','C','K','Q','K','X','E','B','P','T','L','P','X','J','Z','S','R','M','E','B','W','H','J',
    'L','B','J','S','L','Y','Y','S','M','D','X','L','C','L','Q','K','X','L','H','X','J','R','Z','J','M',
    'F','Q','H','X','H','W','Y','W','S','B','H','T','R','X','X','G','L','H','Q','H','F','N','M','V','Y',
    'K','L','D','Y','X','Z','P','W','L','G','G','V','M','T','C','F','P','A','J','J','Z','Y','L','J','T',
    'Y','A','N','J','G','B','J','P','L','Q','G','D','Z','Y','Q','Y','A','X','B','K','Y','S','E','C','J',
    'S','Z','N','S','L','Y','Z','H','Z','X','L','Z','C','G','H','P','X','Z','H','Z','N','Y','T','D','S',
    'B','C','J','K','D','L','Z','A','Y','F','M','Y','D','L','E','B','B','G','Q','Y','Z','K','X','G','L',
    'D','N','D','N','Y','S','K','J','S','H','D','L','Y','X','B','C','G','H','X','Y','P','K','D','J','M',
    'M','Z','N','G','M','M','C','L','G','W','Z','S','Z','X','Z','J','F','Z','N','M','L','Z','Z','T','H',
    'C','S','Y','D','B','D','L','L','S','C','D','D','N','L','K','J','Y','K','J','S','Y','C','J','L','K',
    'W','H','Q','A','S','D','K','N','H','C','S','G','A','N','H','D','A','A','S','H','T','C','P','L','C',
    'P','Q','Y','B','S','D','M','P','J','L','P','Z','J','O','Q','L','C','D','H','J','J','Y','S','P','R',
    'C','H','N','W','N','N','L','H','L','Y','Y','Q','Y','H','W','Z','P','T','C','Z','G','W','W','M','Z',
    'F','F','J','Q','Q','Q','Q','Y','X','A','C','L','B','H','K','D','J','X','D','G','M','M','Y','D','J',
    'X','Z','L','L','S','Y','G','X','G','K','J','R','Y','W','Z','W','Y','C','L','Z','M','S','S','J','Z',
    'L','D','B','Y','D','C','P','C','X','Y','H','L','X','C','H','Y','Z','J','Q','V','V','Q','A','G','M',
    'N','Y','X','P','F','R','K','S','S','B','J','L','Y','X','Y','S','Y','G','L','N','S','C','M','H','C',
    'W','W','M','N','Z','J','J','L','X','X','H','C','H','S','Y','V','V','X','T','X','R','Y','C','Y','X',
    'B','Y','H','C','S','M','X','J','S','Z','N','P','W','G','P','X','X','T','A','Y','B','G','A','J','C',
    'X','L','Y','V','D','C','C','W','Z','O','C','W','K','C','C','S','B','N','H','C','P','D','Y','Z','N',
    'F','C','Y','Y','T','Y','C','K','X','K','Y','B','S','Q','K','K','Y','T','Q','Q','X','F','C','W','C',
    'H','C','Y','K','E','L','Z','Q','B','S','Q','Y','J','Q','C','C','L','M','T','H','S','Y','W','H','M',
    'K','T','L','K','J','L','Y','C','X','W','H','Y','Q','Q','H','T','Q','H','V','P','Q','V','Q','S','C',
    'F','Y','M','M','D','M','G','B','W','H','W','L','G','S','L','L','Y','S','D','L','M','L','X','P','T',
    'H','M','J','H','W','L','J','Z','Y','H','Z','J','X','H','T','X','J','L','H','X','R','S','W','L','W',
    'Z','J','C','B','X','M','H','Z','Q','X','S','D','Z','P','M','G','F','C','S','G','L','S','X','Y','M',
    'Q','S','H','X','P','J','X','W','M','Y','Q','K','S','M','Y','P','L','R','T','H','B','X','F','T','P',
    'M','H','Y','X','L','C','H','L','H','L','Z','Y','L','X','G','S','S','S','S','T','C','L','S','L','T',
    'C','L','R','P','B','H','Z','H','X','Y','Y','F','H','B','V','G','D','M','Y','C','N','Q','Q','W','L',
    'Q','H','J','J','V','Y','W','J','Z','Y','E','J','J','D','H','P','B','L','Q','X','T','Q','K','W','H',
    'L','C','H','Q','X','A','G','T','L','X','L','J','X','M','S','L','V','H','T','Z','K','Z','J','E','C',
    'X','J','C','J','N','M','F','B','Y','V','S','F','Y','W','Y','B','J','Z','G','N','Y','S','D','Z','S',
    'Q','Y','R','S','L','J','P','C','L','P','W','X','S','D','W','E','J','B','J','C','B','C','N','A','Y',
    'T','W','G','M','P','A','P','C','L','Y','Q','P','C','L','Z','X','S','B','N','M','S','G','G','F','N',
    'Z','J','J','B','Z','S','F','Z','Y','N','D','X','H','P','L','Q','K','Z','C','Z','W','A','L','S','B',
    'C','C','J','X','V','Y','Z','H','W','K','Y','P','S','G','X','F','Z','F','C','D','K','H','J','G','X',
    'D','L','Q','F','S','G','D','S','L','Q','W','Z','K','X','T','M','H','S','B','G','Z','M','J','Z','R',
    'G','L','Y','J','B','P','M','L','M','S','X','L','Z','J','Q','S','H','Z','Y','J','C','Z','Y','D','J',
    'W','B','M','J','K','L','D','D','P','M','J','E','G','X','Y','H','Y','L','X','H','L','Q','Y','Q','H',
    'K','Y','C','W','C','J','M','Y','Y','X','N','A','T','J','H','Y','C','C','X','Z','P','C','Q','L','B',
    'Z','W','W','Y','T','W','B','Q','C','M','L','P','M','Y','R','J','C','C','Z','X','F','P','Z','N','Z',
    'Z','L','J','P','L','X','X','Y','Z','T','Z','L','G','D','L','D','C','K','L','Y','R','Z','Z','G','Q',
    'T','G','J','H','H','G','J','L','J','A','X','F','G','F','J','Z','S','L','C','F','D','Q','Z','L','C',
    'L','G','J','D','J','C','S','N','C','L','L','J','P','J','Q','D','C','C','L','C','J','X','M','Y','Z',
    'F','T','S','X','G','C','G','S','B','R','Z','X','J','Q','Q','C','T','Z','H','G','Y','Q','T','J','Q',
    'Q','L','Z','X','J','Y','L','Y','L','B','C','Y','A','M','C','S','T','Y','L','P','D','J','B','Y','R',
    'E','G','K','L','Z','Y','Z','H','L','Y','S','Z','Q','L','Z','N','W','C','Z','C','L','L','W','J','Q',
    'J','J','J','K','D','G','J','Z','V','L','B','B','Z','P','P','G','L','G','H','T','G','Z','X','Y','G',
    'H','Z','M','Y','C','N','Q','S','Y','C','Y','H','B','H','G','X','K','A','M','T','X','Y','X','N','B',
    'S','K','Y','Z','Z','G','J','Z','L','Q','J','D','F','C','J','X','D','Y','G','J','Q','J','J','P','M',
    'G','W','G','J','J','J','P','K','Q','S','B','G','B','M','M','C','J','S','S','C','L','P','Q','P','D',
      

  2.   

    'X','C','D','Y','Y','K','Y','V','C','J','D','D','Y','Y','G','Y','W','R','H','J','R','T','G','Z','N',
    'Y','Q','L','D','K','L','J','S','Z','Z','G','Z','Q','Z','J','G','D','Y','K','S','H','P','Z','M','T',
    'L','C','P','W','N','J','A','F','Y','Z','D','J','C','N','M','W','E','S','C','Y','G','L','B','T','Z',
    'C','G','M','S','S','L','L','Y','X','Q','S','X','S','B','S','J','S','B','B','S','G','G','H','F','J',
    'L','Y','P','M','Z','J','N','L','Y','Y','W','D','Q','S','H','Z','X','T','Y','Y','W','H','M','Z','Y',
    'H','Y','W','D','B','X','B','T','L','M','S','Y','Y','Y','F','S','X','J','C','V','T','X','X','L','H',
    'J','H','F','V','S','X','Z','Q','H','F','Z','M','Z','C','Z','T','Q','C','X','Z','X','R','T','T','D',
    'J','H','N','N','Y','Z','Q','Q','M','N','Q','D','M','M','G','V','Y','T','X','M','J','G','D','H','C',
    'D','Y','Z','B','F','F','A','L','L','Z','T','D','L','T','F','X','M','X','Q','Z','D','N','G','W','Q',
    'D','B','D','C','Z','J','D','X','B','Z','G','S','Q','Q','D','D','J','C','M','B','K','Z','F','F','X',
    'M','K','D','M','D','S','Y','Y','S','Z','C','M','L','J','D','S','Y','N','S','P','R','S','K','M','K',
    'M','P','C','K','L','G','D','B','Q','T','F','Z','S','W','T','F','G','G','L','Y','P','L','L','J','Z',
    'H','G','J','V','G','Y','P','Z','L','T','C','S','M','C','N','B','T','J','B','Q','F','K','T','H','B',
    'Y','Z','G','K','P','B','B','Y','M','T','D','S','S','X','T','B','N','P','D','K','L','E','Y','C','J',
    'N','Y','C','D','Y','K','Z','T','D','H','Q','H','S','D','Z','S','C','T','A','R','L','L','T','K','Z',
    'L','G','E','C','L','L','K','J','L','Q','J','A','Q','N','B','D','K','K','G','H','P','J','T','Z','Q',
    'K','S','E','C','S','H','A','L','Q','F','M','M','G','J','N','L','Y','J','B','B','T','M','L','Y','Z',
    'X','D','C','J','P','L','D','L','P','C','Q','D','H','Z','Y','C','B','Z','S','C','Z','B','Z','M','S',
    'L','J','F','L','K','R','Z','J','S','N','F','R','G','J','H','X','P','D','H','Y','J','Y','B','Z','G',
    'D','L','Q','C','S','E','Z','G','X','L','B','L','H','Y','X','T','W','M','A','B','C','H','E','C','M',
    'W','Y','J','Y','Z','L','L','J','J','Y','H','L','G','V','D','J','L','S','L','Y','G','K','D','Z','P',
    'Z','X','J','Y','Y','Z','L','W','C','X','S','Z','F','G','W','Y','Y','D','L','Y','H','C','L','J','S',
    'C','M','B','J','H','B','L','Y','Z','L','Y','C','B','L','Y','D','P','D','Q','Y','S','X','Q','Z','B',
    'Y','T','D','K','Y','Y','J','Y','V','C','N','R','J','M','P','D','J','G','K','L','C','L','J','B','C',
    'T','B','J','D','D','B','B','L','B','L','C','Z','Q','R','P','P','X','J','C','G','L','Z','C','S','H',
    'L','T','O','L','J','N','M','D','D','D','L','N','G','K','A','Q','H','Q','H','J','H','Y','K','H','E',
    'Z','N','M','S','H','R','P','V','Q','Q','J','C','H','G','M','F','P','R','X','H','J','G','D','Y','C',
    'H','G','H','L','Y','R','Z','Q','L','C','Y','Q','J','N','Z','S','Q','T','K','Q','J','Y','M','S','Z',
    'S','W','L','C','F','Q','Q','Q','X','Y','F','G','G','Y','P','T','Q','W','L','M','C','R','N','F','K',
    'K','F','S','Y','Y','L','Q','B','M','Q','A','M','M','M','Y','X','C','T','P','S','H','C','P','T','X',
    'X','Z','Z','S','M','P','H','P','S','H','M','C','L','M','L','D','Q','F','Y','Q','X','S','Z','Y','J',
    'D','J','J','Z','Z','H','Q','P','D','S','Z','G','L','S','T','J','B','C','K','B','X','Y','Q','Z','J',
    'S','G','P','S','X','Q','Z','Q','Z','Q','Q','T','B','D','K','Y','X','Z','K','H','H','G','F','L','B',
    'C','S','M','D','L','D','G','D','Z','D','B','L','Z','Y','Y','C','X','N','N','C','S','Y','B','Z','B',
    'F','G','L','Z','Z','X','S','W','M','S','C','C','M','Q','N','J','Q','S','B','D','Q','S','J','T','X',
    'X','M','B','L','T','X','Z','C','L','Z','S','H','Z','C','X','R','Q','J','G','J','Y','L','X','Z','F',
    'J','P','H','Y','M','Z','Q','Q','Y','D','F','Q','J','J','L','Z','Z','N','Z','J','C','D','G','Z','Y',
    'G','C','T','X','M','Z','Y','S','C','T','L','K','P','H','T','X','H','T','L','B','J','X','J','L','X',
    'S','C','D','Q','X','C','B','B','T','J','F','Q','Z','F','S','L','T','J','B','T','K','Q','B','X','X',
    'J','J','L','J','C','H','C','Z','D','B','Z','J','D','C','Z','J','D','C','P','R','N','P','Q','C','J',
    'P','F','C','Z','L','C','L','Z','X','Z','D','M','X','M','P','H','J','S','G','Z','G','S','Z','Z','Q',
    'L','Y','L','W','T','J','P','F','S','Y','A','X','M','C','J','B','T','Z','Y','Y','C','W','M','Y','T',
    'C','S','J','J','L','Q','C','Q','L','W','Z','M','A','L','B','X','Y','F','B','P','N','L','S','F','H',
    'T','G','J','W','E','J','J','X','X','G','L','L','J','S','T','G','S','H','J','Q','L','Z','F','K','C',
    'G','N','N','D','S','Z','F','D','E','Q','F','H','B','S','A','Q','T','G','Y','L','B','X','M','M','Y',
    'G','S','Z','L','D','Y','D','Q','M','J','J','R','G','B','J','T','K','G','D','H','G','K','B','L','Q',
    'K','B','D','M','B','Y','L','X','W','C','X','Y','T','T','Y','B','K','M','R','T','J','Z','X','Q','J',
    'B','H','L','M','H','M','J','J','Z','M','Q','A','S','L','D','C','Y','X','Y','Q','D','L','Q','C','A',
    'F','Y','W','Y','X','Q','H','Z');
      

  3.   

    function GetPYIndexChar(hzchar:string):char;implementation
    // 获取指定汉字的拼音索引字母,如:“汉”的索引字母是“H”
    function GetPYIndexChar(hzchar:string):char;
    var
      HzcharWord:Word;
    begin
    try
      HzcharWord:= WORD(hzchar[1]) shl 8 + WORD(hzchar[2]);
      case HzcharWord of
        $B0A1..$B0C4 : result := 'A';
        $B0C5..$B2C0 : result := 'B';
        $B2C1..$B4ED : result := 'C';
        $B4EE..$B6E9 : result := 'D';
        $B6EA..$B7A1 : result := 'E';
        $B7A2..$B8C0 : result := 'F';
        $B8C1..$B9FD : result := 'G';
        $B9FE..$BBF6 : result := 'H';
        $BBF7..$BFA5 : result := 'J';
        $BFA6..$C0AB : result := 'K';
        $C0AC..$C2E7 : result := 'L';
        $C2E8..$C4C2 : result := 'M';
        $C4C3..$C5B5 : result := 'N';
        $C5B6..$C5BD : result := 'O';
        $C5BE..$C6D9 : result := 'P';
        $C6DA..$C8BA : result := 'Q';
        $C8BB..$C8F5 : result := 'R';
        $C8F6..$CBF9 : result := 'S';
        $CBFA..$CDD9 : result := 'T';
        $CDDA..$CEF3 : result := 'W';
        $CEF4..$D1B8 : result := 'X';
        $D1B9..$D4D0 : result := 'Y';
        $D4D1..$D7F9 : result := 'Z';
        55457..63486 : result := PyGbkList[HzcharWord-55456-162*((HzcharWord-55456) Div 256)];
      else
        Result := 'V';
      end;
    except
      Result := 'V';
    end;
    end;
      

  4.   

    大哥,你会错我的意思了。不是只要首字母的,是要完整的拼音,比如 ‘中’ 要得到 zhong