android 原生汉字转拼音用的是HanziToPinyin.java ,但是有些中文字符会转换错误,所以我将HanziToPinyin.java修改了下,改用pinyin4j进行转码,但是碰到一个很奇怪的问题
private static HanyuPinyinOutputFormat outputFormat = new HanyuPinyinOutputFormat();
static {
outputFormat.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
outputFormat.setVCharType(HanyuPinyinVCharType.WITH_V);
outputFormat.setCaseType(HanyuPinyinCaseType.UPPERCASE);
} public static String hanYuPinYin(String key) {
String ss = "";
try{
ss = PinyinHelper.toHanyuPinyinString(key, outputFormat, "");
}catch(Exception e){
Log.w("HanziToPinyin","[hanYuPinYin]pinyin convert key:" + key + " failed !");
}
Log.d("HanziToPinyin","key:"+key+",ss:"+ss);
return String.valueOf(ss.trim());
}
以上是我的代码,单独在java工程里使用上段代码,转换是正常的,输入"呵"输出 "HE"但是我将上述代码移植到 contactsprovider 包下 HanziToPinyin.java中时,当我插入一个名字为"呵呵"的联系人,转换后仍是中文,有人在android碰到这个奇怪的问题不以下是android的log截图
androidpingyin4j androidpinyin4j汉字转拼音
private static HanyuPinyinOutputFormat outputFormat = new HanyuPinyinOutputFormat();
static {
outputFormat.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
outputFormat.setVCharType(HanyuPinyinVCharType.WITH_V);
outputFormat.setCaseType(HanyuPinyinCaseType.UPPERCASE);
} public static String hanYuPinYin(String key) {
String ss = "";
try{
ss = PinyinHelper.toHanyuPinyinString(key, outputFormat, "");
}catch(Exception e){
Log.w("HanziToPinyin","[hanYuPinYin]pinyin convert key:" + key + " failed !");
}
Log.d("HanziToPinyin","key:"+key+",ss:"+ss);
return String.valueOf(ss.trim());
}
以上是我的代码,单独在java工程里使用上段代码,转换是正常的,输入"呵"输出 "HE"但是我将上述代码移植到 contactsprovider 包下 HanziToPinyin.java中时,当我插入一个名字为"呵呵"的联系人,转换后仍是中文,有人在android碰到这个奇怪的问题不以下是android的log截图
androidpingyin4j androidpinyin4j汉字转拼音
解决方案 »
- 请问:android 4.0.3 的底部hotseat, 要实现类似iphone的dock区的效果,该如何下手?
- Android 如何把图片的rgb原始数据转为yuv原始数据
- 二级目录ExpandableListView的父目录(一级目录)包含图片出错。
- 如何学习OpenGL es技术
- Android真机调试(错误)
- 请问android里几个应用共享数据的最佳方式是?
- 严重错误的android代码求指点!!泪流满脸啊!!
- Cannot cast from View to GridView
- android NDK死机
- 聊天
- [android] Fragment嵌套与返回键问题
- apk反编译的问题,反编译出来的东西不知道怎么改。求救
{
try
{
final String resourceName = "/pinyindb/unicode_to_hanyu_pinyin.txt"; setUnicodeToHanyuPinyinTable(new Properties());
getUnicodeToHanyuPinyinTable().load(ResourceHelper.getResourceInputStream(resourceName)); } catch (FileNotFoundException ex)
{
ex.printStackTrace();
} catch (IOException ex)
{
ex.printStackTrace();
}
}
那这个jar包我还怎么用,都没法读取jar包执行时,都无法读取文件。。求指教啊