この記事では、漢字を中国のピンインに変換するJavaの方法について説明します。次のように、参照のために共有してください。
私はインターネットをさまよい、誤ってPinyin4Jと呼ばれる非常に興味深いガジェットを見ました。漢字を中国のピニインに変換できます。彼の言葉を使用して、Luceneと中国の分詞と組み合わせて、Googleに似た関数を作成して、全文検索のために中国のPinyinを入力できます。実装されたコードは次のとおりです
パッケージpinyin4j; Import net.sourceforge.pinyin4j.pinyinhelper; Import net.sourceforge.pinyin4j.format.hanyupinyincaseType; Import net.sourceforge.pinyin4j.format.hanyupinyinoutputformat; Import net.sourege.pyn4j.piny.pyn4j.piny.piny.pyn4j.pentingint.foregen4j.pintin4j.phyn4J. net.sourceforge.pinyin4j.format.hanyupinyinvchartype; Import net.sourceforge.pinyin4j.format.exception.badhanyupinyinoutputformatcombination; public class pinyin4jtest {public static void main(string argsp [] {try {string output = fitputing "fitein" null); System.out.println(output); } catch(badhanyupinyinoutputformatcombination e){// dodo auto-enerated catch block e.printstacktrace(); }} /*** @parm inputcn中国語文字列入力* @Parm seg delimiter中国人pinyinを出力するとき** hanyupinyinoutputformatはいくつかの出力モードを提供します* hanyupinyincaseType:入力の結果が大文字であるか小文字の場合は英語の小文字であるかどうかを設定します。 with_tone_number:ye1 1-4などのトーンを示します。これは、1-4サウンドなし*を意味します* tone:トーンシンボルは表示されませんhanyupinyinvchartype:出力にはどのようなPinyinエンコードを使用する必要がありますか? inputcn.tochararray(); if(seg == null)seg = ""; hanyupinyinoutputformat format = new hanyupinyinoutputformat(); format.setCaseType(hanyupinyincasetype.lowercase); format.settonetype(hanyupinyIntoneType.without_tone); Format.SetVChartype(HanyUpinyInvChartype.With_V); string output = ""; string [] temp = new String [10]; for(int i = 0; i <inputarray.length; i ++){temp = pinyinhelper.tohanyupinyinstringarray(inputarray [i]、format); //入力された漢字がポリフォニック文字である場合、異なる発音が順番にtempに配置されます。ポリフォニック文字ではない場合、TEMP [0]の値のみが(int j = 0; j <temp.length; j ++){output += temp [j] +seg; }} return output; }}この記事がみんなのJavaプログラミングに役立つことを願っています。