最近和一个朋友合作一个来电归属和防火墙类应用(用了小部分NativeHack,都是那位朋友搞定的)。因为要读取本地联系人然后显示,为了便于分组显示。我没有使用Filter,而是直接获取全部联系人列表,然后去Map首字母。

这样执行起来效率很低,毕竟是托管代码。但是期间为了转换成拼音还是费了点事,不仅找了徐老湿博客,还翻看了很多编码方面的东西,最后总结,汉字编码其实和拼音没啥太大关系。徐老湿推荐了一个GB2312的Encoding,然后通过码表查出汉字的码来获取拼音首字母,总的来说这其实不是一个很科学的做法,因为GB2312的编码前部分地确实按拼音来,可是后面的编码就不是了。因此很多汉字还是没法查询出来,而且GB2312只有6k多个汉字,我觉得不是很靠谱。然后找到了微软之前提供的Visual Studio International Pack,不过那个是给.Net Framework 用的。Windows Phone上显然用不了,于是我小小的利用了下Reflector,然后提取资源文件(其实就是一个字典),修改移植到了Windows Phone平台。

测试了下,效率不是很高。调用系统api读取所有联系人,大概300个,然后每个联系人获取拼音首字母,总共耗时大概接近5秒。虽然平均下来似乎不慢,但是这个速度还是很令人郁闷的,于是我决定生成Local Database然后测试一次。

测试完毕,数据库查询一样的慢,我很奇怪,这简直太没道理了,准备优化下,做个单独查询拼音的出来。先放出代码吧,需要的请自由下载,转载自觉注明出处。很希望大家提供更高效的解决方案。

http://vdisk.weibo.com/s/3JsL1

转载于:https://www.cnblogs.com/btxakita/archive/2012/04/03/2430650.html

[2012.04.03] Windows Phone 上的汉语拼音以及多音字处理相关推荐

  1. 25.2.3.35. mysql_init() http://www.cnblogs.com/ymy124/archive/2012/04/03/2430808.html

    先看看mysql_init函数的官方定义: 25.2.3.35. mysql_init() MYSQL *mysql_init(MYSQL *mysql) 描述 分配或初始化与mysql_real_c ...

  2. DB 查询分析器 6.03 在Windows 8 上安装与运行演示

         DB 查询分析器 6.03 在Windows 8 上安装与运行演示 马根峰                 ( 广东联合电子服务股份有限公司, 广州 510300) 摘要           ...

  3. Julia的安装与配置详解(包含在Ubuntu 18.04和Windows 10系统上Julia的安装)

    Julia的安装与配置详解((包含在Ubuntu 18.04和Windows 10系统上Julia的安装) Julia的安装 使用二进制文件安装Julia 在Ubuntu上安装Julia 在Windo ...

  4. ngss for oracle,学习笔记:Oracle bbed工具在Windows平台上兼容9i 10g 11g 12c运

    天萃荷净 配置使用在Windows操作系统中中运行Oracle bbed程序兼容9i 10g 11g 12c 学习ORACLE三剑客:互联网,ORACLE资料,交流.今天在朋友的帮助下,了结了一个心结 ...

  5. Docker在Ubuntu16.04和Windows10家庭版上安装操作步骤

    之前在 https://blog.csdn.net/fengbingchun/article/details/109559500 中对Docker作了简单的介绍,这里介绍下Docker在Ubuntu1 ...

  6. 快速学习使用 Windows Azure 上的 SharePoint Server 2013

     为了在当今的企业环境中占据一席之地,您需要能够迅速顺应变化和应对挑战.有时,需要及时调整您的SharePoint 基础结构以保持竞争优势. 基础结构即服务可通过随时使用.即付即用的解决方案应对这 ...

  7. AI公开课:19.04.03周明—MSRA副院长《NLP的进步如何改变搜索的体验》课堂笔记以及个人感悟

    AI公开课:19.04.03周明-MSRA副院长<NLP的进步如何改变搜索的体验>课堂笔记以及个人感悟 导读        周明博士,1999年加入微软研究院(MSRA).现任微软亚洲研究 ...

  8. 在WINDOWS SERVER 上或远程桌面中使用 MUTEX

    引用: http://www.cnblogs.com/fg0711/archive/2012/05/03/2480502.html 使用Mutex需要注意的两个细节 可能你已经注意到了,例子中在给Mu ...

  9. 移植u-boot.2012.04.01

    /*************************************************** *u-boot版本:u-boot2012.04.01 *gcc版本:arm-linux-gcc ...

最新文章

  1. 剑指offer java版(三)
  2. 阿里云供应链大赛-榜单
  3. CodeForces - 1407E Egor in the Republic of Dagestan(最短路+dp)
  4. 图论 —— 图的遍历 —— 欧拉通路与欧拉回路问题
  5. python双端队列及其实现
  6. C ++基础 | 用户输入之cin函数的正规使用_4
  7. 大数据从业10年,从一个BI项目的失败,看到数据治理的重要性
  8. 189. Rotate Array
  9. 服务器上的 smb 协议,使用smb协议python3访问服务器上的远程文件
  10. nginx 文件服务器 文件类型,如何配置Nginx限制文件类型?
  11. 2022天梯赛 L1-087 机工士姆斯塔迪奥
  12. 中通快递宣布全球发售定价
  13. 预告来袭:【豆冰冰】发.售,现.金.抽.奖等你来拿
  14. windows 搜索文件内容 txt 、excel 、word、c、java 、压缩文件 等文件内容
  15. JavaSE基础笔记(全)
  16. IT时代,为什么要学习UI设计
  17. AList上传文件提示Request failed with status code 413
  18. 回归预测分析(RANSAC、多项式回归、残差图、随机森林)
  19. Java中string字符串和char字符之间的千丝万缕
  20. 《将博客搬至CSDN》_se7en3_新浪博客

热门文章

  1. c语言函数编写格式,在c语言中如何实现函数模板?
  2. druid最大连接数oracle,性能超过DRUID的最强数据库连接池——HikariCP相关配置及简单示例...
  3. 写给学弟们编程入门时必须掌握的HTTP基础知识总结
  4. 几个预防并发搞垮下游服务的方法
  5. 矩阵求导最简单的理解
  6. 总结php删除html标签和标签内的内容的方法
  7. spring oauth2 OAuth2AuthenticationProcessingFilter 校验token过滤器
  8. 安卓窗口动画修改制作心得
  9. 不断变化的MONGODB结果集
  10. 更改盘符实现文件服务器的特使需求