import net.sourceforge.pinyin4j.PinyinHelper;
/**
* 提取第一个汉子/单词的首字母
* @author Jacky
*
*/
public class PinyinUtils {
/**
* 提取第一个汉子/单词的首字母(大写)
*
* @param str
* @return
*/
public static String getFirstHeadWordChar(String str) {
if (isNull(str)) {
return "";
}
String convert = "";
char word = str.charAt(0);
// 提取汉字的首字母
String[] pinyinArray = PinyinHelper.toHanyuPinyinStringArray(word);
if (pinyinArray != null) {
convert += pinyinArray[0].charAt(0);
}
else {
convert += word;
}
convert = string2AllTrim(convert);
return convert.toUpperCase();
}
/**
* 提取每个汉字的首字母(大写)
*
* @param str
* @return
*/
public static String getPinYinHeadChar(String str) {
if (isNull(str)) {
return "";
}
String convert = "";
for (int j = 0; j < str.length(); j++) {
char word = str.charAt(j);
// 提取汉字的首字母
String[] pinyinArray = PinyinHelper.toHanyuPinyinStringArray(word);
if (pinyinArray != null) {
convert += pinyinArray[0].charAt(0);
}
else {
convert += word;
}
}
convert = string2AllTrim(convert);
return convert.toUpperCase();
}
/*
* 判断字符串是否为空
*/
public static boolean isNull(Object strData) {
if (strData == null || String.valueOf(strData).trim().equals("")) {
return true;
}
return false;
}
/**
* 去掉字符串包含的所有空格
*
* @param value
* @return
*/
public static String string2AllTrim(String value) {
if (isNull(value)) {
return "";
}
return value.trim().replace(" ", "");
}
public static void main(String[] args) {
String ss = PinyinUtils.getFirstHeadWordChar("中国");
String bb = PinyinUtils.getPinYinHeadChar("中国");
System.out.println(ss);//Z 打印首字母
System.out.println(bb);//ZG 打印每个字第一个字母
}
}
PinyinUtils 提取第一个汉子/单词的首字母
于 2016-04-06 14:57:50 首次发布