La copia del código es la siguiente:
importar net.sourceforge.pinyin4j.pinyinhelper;
importar net.sourceforge.pinyin4j.format.hanyupinyincasetype;
importar net.sourceForge.pinyin4j.format.hanyupinyinoutputformat;
importar net.sourceForge.pinyin4j.format.hanyupinyIntonetype;
importar net.sourceForge.pinyin4j.format.hanyupinyinvChartype;
importar net.sourceforge.pinyin4j.format.exception.badhanyupinyinoututputformatcombination;
clase pública pinyin4jutil {
/**
* Convierta los caracteres chinos en ortografía completa
*
* @param src
* @return cadena
*/
public static string getPinyin (String src) {
char [] t1 = nulo;
t1 = src.toCarArray ();
// System.out.println (t1.length);
Cadena [] t2 = nueva cadena [t1.length];
// System.out.println (T2.Length);
// Establecer el formato de la salida de pinyin de carácter chino
HanyupinyinoutputFormat t3 = new HanyupinyinoutputFormat ();
t3.setCasetype (hanyupinyincasetype.lowercase);
t3.settonetype (hanyupinyInTonetype.without_tone);
t3.setVcharType (hanyupinyinvchartype.with_v);
Cadena t4 = "";
int t0 = t1.length;
intentar {
para (int i = 0; i <t0; i ++) {
// Determinar si pueden ser caracteres chinos
// System.out.println (T1 [i]);
if (caracteres.toString (t1 [i]). Matches ("[// u4e00-// u9fa5]+")) {
t2 = pinyinhelper. Tohanyupinyinstringarray (T1 [i], t3); // Guarde todas las ortografías de los caracteres chinos en la matriz T2
t4 += t2 [0]; // Después de sacar la primera pronunciación del carácter chino y conectarlo a la cadena T4
} demás {
// Si no es un personaje chino, luego después de extraer indirectamente el personaje y conectarlo a la cadena T4
t4 += caracteres.ToString (t1 [i]);
}
}
} Catch (BadhanyupinyinoutputFormatCombination e) {
E.PrintStackTrace ();
}
regresar t4;
}
/**
* Extraiga la primera letra de cada personaje chino
*
* @param str
* @return cadena
*/
public static string getPinyInheadchar (string str) {
String Convert = "";
para (int j = 0; j <str.length (); j ++) {
word de char = str.charat (j);
// extraer la primera letra de caracteres chinos
Cadena [] pinyinarray = pinyinhelper.tohanyupinyinstringarray (palabra);
if (pinyinarray! = null) {
convertir += pinyinarray [0] .charat (0);
} demás {
convertir += palabra;
}
}
devolver converso;
}
/**
* Convertir cadenas a código ASCII
*
* @param CNSTR
* @return cadena
*/
public static string getCnascii (String CNSTR) {
StringBuffer strBuf = new StringBuffer ();
// Convertir cadenas en secuencias de bytes
byte [] bgbk = cnstr.getBytes ();
para (int i = 0; i <bgbk.length; i ++) {
// System.out.println (Integer.toHexString (bgbk [i] & 0xff));
// convertir cada personaje en código ASCII
strbuf.append (integer.tohexString (bgbk [i] & 0xff));
}
return strBuf.ToString ();
}
public static void main (string [] args) {
Cadena cnstr = "China";
System.out.println (getPinyin (CNSTR));
System.out.println (getPinyInheadchar (CNSTR));
System.out.println (getCnascii (CNSTR));
}
}