http://www.cnblogs.com/XiaoXiaoCoder/archive/2012/03/27/2420438.html
在Java中显示汉字拼音。
以Android为例,首先我们需要导入一个外部jar包,也就是将获得汉字拼音的工具包。通过调用jar包中提供的方法即可获得汉字的拼音了。
写一个工具类,初始化jar包中的HanyuPinyinOutputFormat类,在对该对象进行一下设置,具体设置有什么用就不详细说明了。 最后的文件下载后里面有相关的api文档。之后只需要调用PinyinHelper.toHanyuPinyinStringArray(hanzi, hanyuPinyin);方法,将汉字和刚才初始化的汉语拼音输出格式对象以参数的形式传入就可以获得该汉字的拼音了。
汉字转拼音工具类:
public
class
HanZiToPinYin {
/**
* 返回一个字的拼音
* @param hanzi
* @return
*/
public
static
String toPinYin(
char
hanzi){
HanyuPinyinOutputFormat hanyuPinyin =
new
HanyuPinyinOutputFormat();
hanyuPinyin.setCaseType(HanyuPinyinCaseType.LOWERCASE);
hanyuPinyin.setToneType(HanyuPinyinToneType.WITH_TONE_MARK);
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();
}
//将获取到的拼音返回
return
pinyinArray[
0
];
}
}
|
Android中调用代码如下:
public
class
TestActivity
extends
Activity {
/** Called when the activity is first created. */
TextView tView;
@Override
public
void
onCreate(Bundle savedInstanceState) {
super
.onCreate(savedInstanceState);
tView=
new
TextView(
this
);
tView.setTextSize(
24
);
tView.setTextColor(Color.WHITE);
String hanziString=
"你"
;
String pinyinString= HanZiToPinYin.toPinYin(hanziString.charAt(
0
));
tView.setText(
"拼音:"
+pinyinString+
"\n"
+
"汉字:"
+hanziString);
setContentView(tView);
}
}
|
显示结果如下:

汉字转拼音的工具包的下载地址:
http://download.csdn.net/detail/liuzg129/4178303