C# 汉语生成拼音(微软官方方案)
项目开发中用户的登录名是管理员在后台输入汉字姓名后自动生成的拼音。例如输入:张三,则登录名自动生成ZHANGSAN。
我在网上查阅了很多方法:
如:http://blog.csdn.net/nengzhong/article/details/4210039 等一些方法,但是在转换过程中,有些中文它是无法识别的。
于是,又东奔西走,终于在为微软的官方找到了最佳解决方案:
微软提供了一个Microsoft Visual Studio International Pack 类库软件包,vsintlpack1.zip
其中有一个类库:Simplified Chinese Pin-Yin Conversion Library 支持获取简体中文字符的常用属性
具体操作:
1、vsintlpack1.zip 下载地址为:
2、下载vsintlpack1.zip后,解压安装其中的CHSPinYinConv.msi,如安装到C:\Program Files\Microsoft Visual Studio International Pack\Simplified Chinese Pin-Yin Conversion Library ,可以看到以下文件。

3、在项目中添加引用,在步骤2安装目录下添加引用ChnCharInfo.dll。
引用成功后如图:

4 、测试方法如下:
private string ConvertToPinYin(string str)
{
string PYstr = "";
foreach (char item in str.ToCharArray())
{
if (Microsoft.International.Converters.PinYinConverter.ChineseChar.IsValidChar(item))
{
Microsoft.International.Converters.PinYinConverter.ChineseChar cc = new Microsoft.International.Converters.PinYinConverter.ChineseChar(item); //PYstr += string.Join("", cc.Pinyins.ToArray());
PYstr += cc.Pinyins[].Substring(, cc.Pinyins[].Length - );
//PYstr += cc.Pinyins[0].Substring(0, cc.Pinyins[0].Length - 1).Substring(0, 1).ToLower();
}
else
{
PYstr += item.ToString();
}
}
return PYstr;
}
C# 汉语生成拼音(微软官方方案)的更多相关文章
- Windows7微软官方原版镜像系统文件
Windows7微软官方原版镜像系统 Windows 7 是由微软公司(Microsoft)开发的操作系统,核心版本号为Windows NT 6.1.Windows 7可供家庭及 商业工作环境.笔记本 ...
- Windows7下的免费虚拟机(微软官方虚拟机)
前言: 不是说windows7自带的虚拟机最好用,而是他是正式版的,免费的,只要你是windows7用户,就可以免费使用: 其实我最推荐的还是Vmware: 微软为什么提供免费的虚拟机呢? 因为vis ...
- 微软官方网站线上兼容测试平台-Browser screenshots
前端开发时最不想做的就是在不同浏览器.平台和分辨率测试网页显示效果,通常这会浮现许多问题,尤其浏览器版本就可能让显示成效完全不同,也只好尽力维持让每一种设备都能正常浏览网页.修改到完全没有问题必须投入 ...
- Win10微软官方最终正式版ISO镜像文件
Win10微软官方最终正式版ISO镜像文件 据说Windows 10是微软发布的最后一个Windows版本,下一代Windows将作为Update形式出现.Windows 10将发布7个发行版本,分别 ...
- Win8.1微软官方最终正式版ISO镜像文件
Win8.1微软官方最终正式版ISO镜像文件 经过预览版,测试版.开发版本等几个乱七八糟的版本后,2013年10月17日,微软终于如约的发布了Win8.1最终正式版. Win8.1和win8的区别 1 ...
- Productivity Power Tools 是微软官方推出的 Visual Studio 扩展
Productivity Power Tools 是微软官方推出的 Visual Studio 扩展 免费的精品: Productivity Power Tools 动画演示
- Win7 SP1语言包微软官方下载地址及使用方法 2
情形一:如果您的系统版本是企业版.旗舰版,可以在Windows update中检测语言包按照提示下载安装即可.如果觉得Windows update不方便的话,可以在本文第二部分中下载所需的语言包,下载 ...
- Windows 7 SP1 x64 旗舰版 微软官方安装U盘的制作
[ 本主题由 中山艹泥喵 于 2013-08-20 23:14:33 设为精华1,原因:不错~ ] 最后由 风中枯萎 于 2015-12-15 17:44:15 修改 安装Windows 7操作系统主 ...
- DSOframer 微软官方API的查阅方法
不了解 DSOframer 的朋友,可以先参考文章 DSOframer 的简单介绍和资源整理. 大家在使用 DSOframer 时,常常会不知道在哪里查 API 文档,网上的文章都非常零散,很难找到自 ...
随机推荐
- openSUSE Linux 忘记root密码的解决方法
openSUSE Linux 忘记root密码的解决方法 : 对于大部分linux发行版本,忘记root密码的时候,是可以通过单用户模式来重设密码的. 如在redhat/fedora 下,可以通过在启 ...
- umbraco
在任意页面获取根节点 var locale = CurrentPage.Site(); 遍历根节点 @foreach (var module in CurrentPage.Site().Childre ...
- 【UVA1515 算法竞赛入门指南】 水塘【最小割】
题意: 输入一个h行w列的字符矩阵,草地用“#”表示,洞用"."表示.你可以把草改成洞,每格花费为d,也可以把洞填上草,每格花费为f.最后还需要在草和洞之间修围栏,每条边花费为b. ...
- qt的exe文件查找依赖的dll
用qtcreater编译完工程生成的exe文件往往会依赖dll文件.如何一次定位exe文件所以依赖的所有dll文件呢,今天发现了软件叫hap-depends. 截图如下: 用这个软件打开exe文件就会 ...
- Java-随机数工具类
import java.util.Random; import java.util.concurrent.ThreadLocalRandom; import org.apache.commons.la ...
- 无法查找或打开 PDB 文件解决办法
用VS调试程序时,有时会在VS底部的“输出”框中提示“无法查找或打开 PDB 文件”.这该怎么解决呢? 下面,我们以VS2013为例,来教大家解决办法. 工具/原料 VS 方法/步骤 打开VS20 ...
- weblogic如何部署web应用
weblogic如何部署web应用 程序员的基础教程:菜鸟程序员
- Powerdesigner逆向工程从mysql生成PDM
大家喜欢用powerDesigner进行数据库建模.通常都是先设计出物理模型图,再转换出数据库需要的SQL语句,从而生成数据库.但“powerDesigner逆向工程”就能将数据库逆向转为物理模型图. ...
- p4042 [AHOI2014/JSOI2014]骑士游戏
传送门 分析 我们发现对于一个怪物要不然用魔法代价使其无需考虑后续点要么用普通攻击使其转移到他所连的所有点上且所有边大于0 所以我们可以先将一个点的最优代价设为魔法攻击的代价 之后我们倒着跑spfa求 ...
- 朴素贝叶斯算法的python实现-乾颐堂
算法优缺点 优点:在数据较少的情况下依然有效,可以处理多类别问题 缺点:对输入数据的准备方式敏感 适用数据类型:标称型数据 算法思想: 朴素贝叶斯 比如我们想判断一个邮件是不是垃圾邮件,那么我们知道的 ...