通讯录 截取联系人姓名的首字母 转字母
if(data.getName()!=null){
//姓名首字母检索
String Spinyin="";//首字母拼音
for(int j=0;j<data.getName().length();j++){
String temp=MyHanziToPinyin.toPinYin(data.getName().substring(j, j+1));
if(temp!=null&&temp.length()>0){
Spinyin+=(temp.substring(0, 1));
}
}
public class MyHanziToPinyin {
/*** 返回一个字的拼音
* @param hanzi
* @return
*/
public static String toPinYin(String str){
String restr="";
for(int i=0;i<str.length();i++){
char hanzi=str.charAt(i);
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);
}else{
pinyinArray = new String[1];
pinyinArray[0]=String.valueOf(hanzi);
}
} catch (BadHanyuPinyinOutputFormatCombination e) {
e.printStackTrace();
}
// 将汉字返回
restr+=pinyinArray[0];
}
return restr;
}
}