勤&快

问题其实就是你期望的东西和你体验的东西之间的差别
随笔 - 55, 文章 - 0, 评论 - 68, 引用 - 0
数据加载中……

为黑莓通讯录添加拼音

入手黑莓8700一段时间了,总体很爽,特别赞的是屏幕。
美中不足的是通讯录不支持中文搜索。网上说在姓/明天/头衔等处添加拼音全频,就可以直接搜索了。
马上动手。
1. 将黑莓通讯录同步到outlook中
2. 在outlook中修改通讯录,比如删除过时的信息,修改不正确的字段。
**建议导出cvs文件,在excel里面编辑**
注意,在outlook中和黑莓通讯录的对应关系:
outlook-黑莓
姓氏-姓氏/lastname
名字-名字/firstname
单位-单位/company
职务-公司职务
其他英文称谓/中文称谓都不要用
3. 将eclipse表格中姓名粘贴到记事本,用java编程,将其转换为拼音。
使用了pinyin4j-2.5.0的库,下载地址是:http://pinyin4j.sourceforge.net/
大体程序如下:
        HanyuPinyinOutputFormat format = new HanyuPinyinOutputFormat();
        format.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
        format.setVCharType(HanyuPinyinVCharType.WITH_V);
        File file 
= new File("source.txt");
        
try {
            BufferedReader br 
= new BufferedReader(new FileReader(file));
            
char[] cbuf = new char[10];
            
for(int i=0; i<4000; i++) {
                br.read(cbuf, 
01);
                
if(cbuf[0]>=0 && cbuf[0< 128) {
                    System.out.print(cbuf[
0]);
                } 
else {
                    String[] result 
= PinyinHelper.toHanyuPinyinStringArray(cbuf[0], format);
                    System.out.print(result[
0+ " ");
                }
            }
        } 
catch (FileNotFoundException e1) {
            
// TODO Auto-generated catch block
            e1.printStackTrace();
        } 
catch (IOException e) {
            
// TODO Auto-generated catch block
            e.printStackTrace();
        } 
catch (BadHanyuPinyinOutputFormatCombination e) {
            
// TODO Auto-generated catch block
            e.printStackTrace();
        }
注意:
** 按照char读取,如果是ascii,直接输出,否则,调用pinyin4j
** 这里的pinyin4j输出格式是小写带v,并且不带声调
** 每个拼音之间要有空格。否则不能从拼音搜索。

4. 得到所有的拼音之后,复制到cvs中对应的“名”/firstname中
5. 同步到blackberry 8700中
6. 设置按照“名”排序。
7. 到通讯录中直接输入拼音就可以找联系人了。

posted on 2009-09-09 18:03 daning 阅读(2165) 评论(0)  编辑  收藏 所属分类: othersjava