Die Codekopie lautet wie folgt:
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;
import net.sourceforge.pinyin4j.format.exception.badhanyupinyinoutputformatCombination;
öffentliche Klasse Pinyin4jutil {
/**
* Konvertieren Sie chinesische Charaktere in die volle Schreibweise
*
* @param src
* @return String
*/
public static String getPinyin (String src) {
char [] t1 = null;
t1 = src.toarArray ();
// system.out.println (t1.length);
String [] t2 = new String [t1.length];
// system.out.println (t2.Length);
// Setzen Sie das Format der chinesischen Zeichenpinyin -Ausgabe des chinesischen Zeichens
Hanyupinyinoutputformat t3 = new hanyupinyinoutputformat ();
t3.setCasetype (hanyupinyincaSetype.lowerCase);
t3.ettonetype (hanyupinyIntonetype.without_tone);
t3.setVchartype (hanyupinyInvchartype.with_v);
String t4 = "";
int t0 = t1.länge;
versuchen {
für (int i = 0; i <t0; i ++) {
// Bestimmen Sie, ob es chinesische Zeichen sein kann
// system.out.println (t1 [i]);
if (charakter.toString (t1 [i]). Übereinstimmung ("[// u4e00-// u9fa5]+") {
T2 = Pinyinhelper.TohanyupinyInstringArray (T1 [i], T3); // Speichern Sie alle Schreibweisen chinesischer Zeichen in das T2 -Array
t4 += t2 [0]; // nach der ersten Aussprache des chinesischen Zeichens und der Verbindung mit der Zeichenfolge T4
} anders {
// Wenn es sich nicht um ein chinesisches Zeichen handelt, dann nach indirekter Extrahiere des Zeichens und der Verbindung mit dem String T4
t4 += charakter.toString (t1 [i]);
}
}
} catch (badhanyupinyinoutputFormatCombination e) {{
E. printstacktrace ();
}
Rückkehr T4;
}
/**
* Extrahieren Sie den ersten Buchstaben jedes chinesischen Zeichens
*
* @param str
* @return String
*/
public static String getPinyInheadchar (String str) {
String convert = "";
für (int j = 0; j <str.length (); j ++) {
char Word = str.charat (j);
// extrahieren Sie den ersten Buchstaben chinesischer Zeichen
String [] pinyinarray = pinyinhelper.tohanyupinyInstringArray (Word);
if (pinyinarray! = null) {
konvertieren += pinyinarray [0] .charat (0);
} anders {
konvertieren += Wort;
}
}
Return Convert;
}
/**
* Konvertieren Sie Strings in ASCII -Code
*
* @param cnstr
* @return String
*/
public static String getCnascii (String cnstr) {
StringBuffer strbuf = new StringBuffer ();
// Strings in Byte -Sequenzen umwandeln
byte [] bgbk = cnstr.getBytes ();
für (int i = 0; i <bgbk.length; i ++) {
// system.out.println (Integer.tohexString (BGBK [i] & 0xff));
// Wandeln Sie jedes Zeichen in den ASCII -Code um
Strbuf.Append (Integer.tohexString (BGBK [i] & 0xff));
}
return strbuf.toString ();
}
public static void main (String [] args) {
String cnstr = "China";
System.out.println (Getpinyin (CNSTR));
System.out.println (GetPinyInheadchar (CNSTR));
System.out.println (getCnascii (cnstr));
}
}