本文整理匯總了Java中net.sourceforge.pinyin4j.format.HanyuPinyinVCharType類的典型用法代碼示例。如果您正苦於以下問題:Java HanyuPinyinVCharType類的具體用法?Java HanyuPinyinVCharType怎麽用?Java HanyuPinyinVCharType使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。
HanyuPinyinVCharType類屬於net.sourceforge.pinyin4j.format包,在下文中一共展示了HanyuPinyinVCharType類的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: getAllPinYin
import net.sourceforge.pinyin4j.format.HanyuPinyinVCharType; //導入依賴的package包/類
public List<String> getAllPinYin(char c){
HanyuPinyinOutputFormat format = new HanyuPinyinOutputFormat();
format.setCaseType(HanyuPinyinCaseType.LOWERCASE);
format.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
format.setVCharType(HanyuPinyinVCharType.WITH_U_UNICODE);
Set<String> set = new HashSet<>();
try {
String[] pinYinStringArray = PinyinHelper.toHanyuPinyinStringArray(c, format);
for(String pinYin : pinYinStringArray){
pinYin = pinYin.toLowerCase().replace("ü", "v");
if(StringUtils.isBlank(pinYin)){
continue;
}
set.add(pinYin);
set.add(String.valueOf(pinYin.charAt(0)));
charPinYin.add(pinYin);
if(pinYin.length() > charMaxPinYinLength){
charMaxPinYinLength = pinYin.length();
}
}
}catch (Exception e){
LOGGER.error("獲取拚音失敗", e);
}
return set.stream().sorted().collect(Collectors.toList());
}
示例2: toPinYin
import net.sourceforge.pinyin4j.format.HanyuPinyinVCharType; //導入依賴的package包/類
/**
* 返回一個字的拚音
*/
public static String toPinYin(char hanzi) {
HanyuPinyinOutputFormat hanyuPinyin = new HanyuPinyinOutputFormat();
hanyuPinyin.setCaseType(HanyuPinyinCaseType.LOWERCASE);
hanyuPinyin.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
hanyuPinyin.setVCharType(HanyuPinyinVCharType.WITH_U_UNICODE);
String[] pinyinArray = null;
try {
//是否在漢字範圍內
if (hanzi >= 0x4e00 && hanzi <= 0x9fa5) {
pinyinArray = PinyinHelper.toHanyuPinyinStringArray(hanzi, hanyuPinyin);
}
} catch (BadHanyuPinyinOutputFormatCombination e) {
e.printStackTrace();
Log.e(TAG, "toPinYin: hanzi = "+hanzi );
Log.e(TAG, "toPinYin: pinyinArray.toString() = "+pinyinArray.toString() );
}
//將獲取到的拚音返回
if (pinyinArray != null && pinyinArray.length > 0) {
return pinyinArray[0];
} else {
Log.e(TAG, "toPinYin: hanzi = "+hanzi );
return "#";
}
}
示例3: getPinYin
import net.sourceforge.pinyin4j.format.HanyuPinyinVCharType; //導入依賴的package包/類
/**
* 將漢字轉換為全拚
*
* @param src 源漢字
* @return String pin yin
*/
public static String getPinYin(String src) {
char[] t1 = src.toCharArray();
String[] t2;
// 設置漢字拚音輸出的格式
HanyuPinyinOutputFormat t3 = new HanyuPinyinOutputFormat();
t3.setCaseType(HanyuPinyinCaseType.LOWERCASE);
t3.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
t3.setVCharType(HanyuPinyinVCharType.WITH_V);
StringBuilder t4 = new StringBuilder();
try {
for (char aT1 : t1) {
// 判斷是否為漢字字符
if (Character.toString(aT1).matches("[\\u4E00-\\u9FA5]+")) {
t2 = PinyinHelper.toHanyuPinyinStringArray(aT1, t3);// 將漢字的幾種全拚都存到t2數組中
t4.append(t2[0]);// 取出該漢字全拚的第一種讀音並連接到字符串t4後
} else {
// 如果不是漢字字符,直接取出字符並連接到字符串t4後
t4.append(Character.toString(aT1));
}
}
} catch (BadHanyuPinyinOutputFormatCombination e) {
LOGGER.error("", e);
}
return t4.toString();
}
示例4: getSinglePinyin
import net.sourceforge.pinyin4j.format.HanyuPinyinVCharType; //導入依賴的package包/類
/**
* 字到拚音
* @param zhWord
* @return
*/
public static String getSinglePinyin(char zhWord){
String pinyin[] = new String[0];
if (zhWord=='\0'){ // 判定字符是否為空
return "";
}
if (zhWord=='(' || zhWord==')' || zhWord=='/'){
return "";
}
HanyuPinyinOutputFormat hanyuPinyinOutputFormat = new HanyuPinyinOutputFormat();
hanyuPinyinOutputFormat.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
hanyuPinyinOutputFormat.setVCharType(HanyuPinyinVCharType.WITH_V);
try {
pinyin= PinyinHelper.toHanyuPinyinStringArray(zhWord,hanyuPinyinOutputFormat);
} catch (BadHanyuPinyinOutputFormatCombination badHanyuPinyinOutputFormatCombination) {
badHanyuPinyinOutputFormatCombination.printStackTrace();
}
return pinyin[0];
}
示例5: getPinYin
import net.sourceforge.pinyin4j.format.HanyuPinyinVCharType; //導入依賴的package包/類
/**
* 將字符串中的中文轉化為拚音,其他字符不變
*
* @param inputString
*
* @return
*/
public static String getPinYin(String inputString) {
HanyuPinyinOutputFormat format = new HanyuPinyinOutputFormat();
format.setCaseType(HanyuPinyinCaseType.LOWERCASE);
format.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
format.setVCharType(HanyuPinyinVCharType.WITH_V);
char[] input = inputString.trim().toCharArray();
String output = "";
try {
for (int i = 0; i < input.length; i++) {
if (java.lang.Character.toString(input[i]).matches("[\\u4E00-\\u9FA5]+")) {
String[] temp = PinyinHelper.toHanyuPinyinStringArray(input[i], format);
output += temp[0];
} else
output += java.lang.Character.toString(input[i]);
}
} catch (BadHanyuPinyinOutputFormatCombination e) {
e.printStackTrace();
}
return output;
}
示例6: getPingYin
import net.sourceforge.pinyin4j.format.HanyuPinyinVCharType; //導入依賴的package包/類
public static String getPingYin(String src) {
char[] t1 = null;
t1 = src.toCharArray();
String[] t2 = new String[t1.length];
HanyuPinyinOutputFormat t3 = new HanyuPinyinOutputFormat();
t3.setCaseType(HanyuPinyinCaseType.LOWERCASE);
t3.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
t3.setVCharType(HanyuPinyinVCharType.WITH_V);
String t4 = "";
int t0 = t1.length;
try {
for (int i = 0; i < t0; i++) {
// 判斷是否為漢字字符
if (java.lang.Character.toString(t1[i]).matches("[\\u4E00-\\u9FA5]+")) {
t2 = PinyinHelper.toHanyuPinyinStringArray(t1[i], t3);
t4 += t2[0];
} else {
t4 += java.lang.Character.toString(t1[i]);
}
}
return t4;
} catch (BadHanyuPinyinOutputFormatCombination e1) {
e1.printStackTrace();
}
return t4;
}
示例7: getPinYin
import net.sourceforge.pinyin4j.format.HanyuPinyinVCharType; //導入依賴的package包/類
public static String getPinYin(String strs) {
HanyuPinyinOutputFormat format = new HanyuPinyinOutputFormat();
format.setCaseType(HanyuPinyinCaseType.LOWERCASE);
format.setToneType(HanyuPinyinToneType.WITHOUT_TONE); // WITH_TONE_NUMBER/WITHOUT_TONE/WITH_TONE_MARK
format.setVCharType(HanyuPinyinVCharType.WITH_U_UNICODE);
char[] ch = strs.trim().toCharArray();
StringBuffer buffer = new StringBuffer("");
try {
for (int i = 0; i < ch.length; i++) {
// unicode,bytes應該也可以.
if (Character.toString(ch[i]).matches("[\u4e00-\u9fa5]+")) {
String[] temp = PinyinHelper.toHanyuPinyinStringArray(ch[i], format);
buffer.append(temp[0]);
//buffer.append(" ");
} else {
buffer.append(Character.toString(ch[i]));
}
}
} catch (BadHanyuPinyinOutputFormatCombination e) {
e.printStackTrace();
}
return buffer.toString();
}
示例8: getPinyin
import net.sourceforge.pinyin4j.format.HanyuPinyinVCharType; //導入依賴的package包/類
@Override
public String[] getPinyin(char ch) throws IllegalPinyinException {
try{
HanyuPinyinOutputFormat outputFormat = new HanyuPinyinOutputFormat();
outputFormat.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
outputFormat.setCaseType(HanyuPinyinCaseType.LOWERCASE);
outputFormat.setVCharType(HanyuPinyinVCharType.WITH_V);
if(ch>=32 && ch<=125){ //ASCII >=33 ASCII<=125的直接返回 ,ASCII碼表:http://www.asciitable.com/
return new String[]{String.valueOf(ch)};
}
return ArrayUtils.distinct(PinyinHelper.toHanyuPinyinStringArray(ch, outputFormat));
} catch (BadHanyuPinyinOutputFormatCombination e) {
throw new IllegalPinyinException(e);
}
}
示例9: testToPinyin
import net.sourceforge.pinyin4j.format.HanyuPinyinVCharType; //導入依賴的package包/類
private void testToPinyin() throws IOException {
initNames();
HanyuPinyinOutputFormat format = new HanyuPinyinOutputFormat();
format.setVCharType(HanyuPinyinVCharType.WITH_V);
names.forEach(name -> {
String py = null;
try {
py = PinyinHelper.toHanYuPinyinString(name, format, "", true);
String hanPy = Han2Pinyin(name);
String hanPy2 = HanLP.convertToPinyinString(name, "", false);
if (!py.equals(hanPy)) {
System.out.println(String.format("%s: %s - %s - %s", name, py, hanPy, hanPy2));
}
// if (!py.equals(py.replaceAll("[\\u3400-\\u9FFF]", ""))) {
// System.out.println(py);
// }
} catch (BadHanyuPinyinOutputFormatCombination badHanyuPinyinOutputFormatCombination) {
badHanyuPinyinOutputFormatCombination.printStackTrace();
}
});
}
示例10: testIsChinese
import net.sourceforge.pinyin4j.format.HanyuPinyinVCharType; //導入依賴的package包/類
@Test
public void testIsChinese() throws BadHanyuPinyinOutputFormatCombination {
char[] allChars = allChars();
final int allCharsLength = allChars.length;
HanyuPinyinOutputFormat format = new HanyuPinyinOutputFormat();
format.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
format.setCaseType(HanyuPinyinCaseType.UPPERCASE);
format.setVCharType(HanyuPinyinVCharType.WITH_V);
for (int i = 0; i < allCharsLength; i++) {
char targetChar = allChars[i];
String[] pinyins = PinyinHelper.toHanyuPinyinStringArray(targetChar, format);
if (pinyins != null && pinyins.length > 0) {
// is chinese
assertThat(Pinyin.isChinese(targetChar), is(true));
} else {
// not chinese
assertThat(Pinyin.isChinese(targetChar), is(false));
}
}
}
示例11: getPingYin
import net.sourceforge.pinyin4j.format.HanyuPinyinVCharType; //導入依賴的package包/類
/**
* ���ַ����е�����ת��Ϊƴ��,�����ַ�����
* @param inputString
* @return
*/
public static String getPingYin(String inputString) {
HanyuPinyinOutputFormat format = new HanyuPinyinOutputFormat();
format.setCaseType(HanyuPinyinCaseType.LOWERCASE);
format.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
format.setVCharType(HanyuPinyinVCharType.WITH_V);
char[] input = inputString.trim().toCharArray();
String output = "";
try {
for (char curchar : input) {
if (java.lang.Character.toString(curchar).matches(
"[\\u4E00-\\u9FA5]+")) {
String[] temp = PinyinHelper.toHanyuPinyinStringArray(
curchar, format);
output += temp[0];
} else
output += java.lang.Character.toString(curchar);
}
} catch (BadHanyuPinyinOutputFormatCombination e) {
e.printStackTrace();
}
return output;
}
示例12: getPingYin
import net.sourceforge.pinyin4j.format.HanyuPinyinVCharType; //導入依賴的package包/類
/**
* 將字符串中的中文轉化為拚音,其他字符不變
*
* @param inputString
* @return
*/
public static String getPingYin(String inputString) {
HanyuPinyinOutputFormat format = new HanyuPinyinOutputFormat();
format.setCaseType(HanyuPinyinCaseType.LOWERCASE);
format.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
format.setVCharType(HanyuPinyinVCharType.WITH_V);
char[] input = inputString.trim().toCharArray();
String output = "";
try {
for (int i = 0; i < input.length; i++) {
if (java.lang.Character.toString(input[i]).matches("[\\u4E00-\\u9FA5]+")) {
String[] temp = PinyinHelper.toHanyuPinyinStringArray(input[i], format);
output += temp[0];
} else
output += java.lang.Character.toString(input[i]);
}
} catch (BadHanyuPinyinOutputFormatCombination e) {
e.printStackTrace();
}
return output;
}
示例13: initHanyuPinyin
import net.sourceforge.pinyin4j.format.HanyuPinyinVCharType; //導入依賴的package包/類
public static void initHanyuPinyin() {
format = new HanyuPinyinOutputFormat();
// UPPERCASE:大寫 (ZHONG)
// LOWERCASE:小寫 (zhong)
format.setCaseType(HanyuPinyinCaseType.LOWERCASE);
// WITHOUT_TONE:無音標 (zhong)
// WITH_TONE_NUMBER:1-4數字表示英標 (zhong4)
// WITH_TONE_MARK:直接用音標符(必須WITH_U_UNICODE否則異常) (zhòng)
format.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
// WITH_V:用v表示ü (nv)
// WITH_U_AND_COLON:用"u:"表示ü (nu:)
// WITH_U_UNICODE:直接用ü (nü)
format.setVCharType(HanyuPinyinVCharType.WITH_V);
}
示例14: getPingYin
import net.sourceforge.pinyin4j.format.HanyuPinyinVCharType; //導入依賴的package包/類
/**
* 將字符串中的中文轉化為拚音,其他字符不變
*
* @param inputString
* @return
*/
public static String getPingYin(String inputString) {
HanyuPinyinOutputFormat format = new HanyuPinyinOutputFormat();
format.setCaseType(HanyuPinyinCaseType.LOWERCASE);
format.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
format.setVCharType(HanyuPinyinVCharType.WITH_V);
char[] input = inputString.trim().toCharArray();
String output = "";
try {
for (int i = 0; i < input.length; i++) {
if (java.lang.Character.toString(input[i]).matches("[\\u4E00-\\u9FA5]+")) {
String[] temp = PinyinHelper.toHanyuPinyinStringArray(input[i], format);
output += temp[0];
} else
output += java.lang.Character.toString(input[i]);
}
} catch (BadHanyuPinyinOutputFormatCombination e) {
e.printStackTrace();
}
return output;
}
示例15: getPingYin
import net.sourceforge.pinyin4j.format.HanyuPinyinVCharType; //導入依賴的package包/類
/**
* ���ַ��е�����ת��Ϊƴ��,�����ַ��
*
* @param inputString
* @return
*/
public static String getPingYin(String inputString) {
HanyuPinyinOutputFormat format = new HanyuPinyinOutputFormat();
format.setCaseType(HanyuPinyinCaseType.LOWERCASE);
format.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
format.setVCharType(HanyuPinyinVCharType.WITH_V);
char[] input = inputString.trim().toCharArray();
String output = "";
try {
for (int i = 0; i < input.length; i++) {
if (java.lang.Character.toString(input[i]).matches("[\\u4E00-\\u9FA5]+")) {
String[] temp = PinyinHelper.toHanyuPinyinStringArray(input[i], format);
output += temp[0];
} else
output += java.lang.Character.toString(input[i]);
}
} catch (BadHanyuPinyinOutputFormatCombination e) {
e.printStackTrace();
}
return output;
}