JavaDemo——汉字转拼音

maven导入:


		
		    com.belerweb
		    pinyin4j
		    2.5.1
		

Demo:

/**
 * 2020年6月18日上午10:31:01
 */
package testpinyin;

import java.util.Arrays;

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;

/**
 * @author XWF
 *
 */
public class TestPinYin {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		char ch = '好';
		String[] s = PinyinHelper.toHanyuPinyinStringArray(ch);
		System.out.println(Arrays.asList(s));
		
		HanyuPinyinOutputFormat f = new HanyuPinyinOutputFormat();//默认:LOWERCASE,WITH_U_AND_COLON,WITH_TONE_NUMBER
		f.setCaseType(HanyuPinyinCaseType.UPPERCASE);
//		HanyuPinyinCaseType.LOWERCASE	小写
//		HanyuPinyinCaseType.UPPERCASE	大写
		f.setVCharType(HanyuPinyinVCharType.WITH_U_UNICODE);
//		HanyuPinyinVCharType.WITH_U_AND_COLON	用u和冒号表示
//		HanyuPinyinVCharType.WITH_U_UNICODE	用u的unicode表示
//		HanyuPinyinVCharType.WITH_V;	用v表示
		f.setToneType(HanyuPinyinToneType.WITH_TONE_MARK);
//		HanyuPinyinToneType.WITH_TONE_MARK	声调用符号表示(只能搭配"WITH_U_UNICODE"使用)
//		HanyuPinyinToneType.WITH_TONE_NUMBER	声调用数字表示
//		HanyuPinyinToneType.WITHOUT_TONE	不显示声调
		try {
			s = PinyinHelper.toHanyuPinyinStringArray(ch, f);
		} catch (BadHanyuPinyinOutputFormatCombination e) {
			e.printStackTrace();
		}
		System.out.println(Arrays.asList(s));
	}

}

结果:

关于配置组合和效果源码里已经说的很清楚了:

JavaDemo——汉字转拼音_第1张图片

你可能感兴趣的:(JavaDemos,汉字转拼音)