Este artigo descreve o método de Java para converter caracteres chineses em pinyin chinês. Compartilhe -o para sua referência, como segue:
Eu estava vagando pela internet e acidentalmente vi um gadget muito interessante chamado Pinyin4J. Pode converter caracteres chineses em pinyin chinês. Usando suas palavras e combinado com o Lucene e o Particle Chinese, você pode criar uma função semelhante ao Google para inserir a Pinyin Chinese para pesquisa de texto completo. O código implementado é o seguinte
package pinyin4j;import net.sourceforge.pinyin4j.PinyinHelper;import net.sourceforge.pinyin4j.format.HanyuPinyinCaseType;import net.sourceforge.pinyin4j.format.HanyuPinyinOutputFormat;import net.sourceforge.pinyin4j.format.HanyuPinyinToneType;import net.sourceforge.pinyin4j.format.hanyUpinyInvChartype; importar net.sourceforge.pinyin4j.format.exception.badhanyupinyinoutputFormatCombination; public Classyininin4jtest {public static void main (stringspsp []) {{string string nulo); System.out.println (saída); } catch (badhanyUpinyInOutputFormatComBination e) {// TODO BLOCO DE CATAGEM AUTOMENTADO E.PRINTSTACKTRACE (); } } /** * @parm inputCN Chinese string input* @parm seg Delimiter when outputting Chinese pinyin* * HanyuPinyinOutputFormat provides several output modes* HanyuPinyinCaseType: Set whether the result of the input is uppercase or lowercase English LOWERCASE: lowercase UPPERCASE: uppercase * HanyuPinyinToneType: whether the output indicates the tone and the accent With_tone_number: indica o tom como Ye1 1-4, o que significa 1-4 som* sem_tone: o símbolo de tom não é exibido hanyupinyInvChartype: que tipo de codificação de pinyin deve ser usada para a saída*/ public STATIAT Stric CntoNinin (string inputcn, string seg) badhanyingininoutbinutinoutbinutbinutin (string inppn) 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], formato); // Se o caractere chinês inserido for um caractere polifônico, diferentes pronúncias serão colocadas em temp [] em sequência. Se não for um caractere polifônico, apenas o valor na temperatura [0] é para (int j = 0; j <temp.length; j ++) {output += temp [j] +seg; }} retornar saída; }}Espero que este artigo seja útil para a programação Java de todos.