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 下载地址为:

http://www.microsoft.com/downloads/details.aspx?FamilyID=44cac7f0-633b-477d-aed2-99aee642fc10&DisplayLang=zh-cn

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[0].Substring(0, cc.Pinyins[0].Length - 1);
                    //PYstr += cc.Pinyins[0].Substring(0, cc.Pinyins[0].Length - 1).Substring(0, 1).ToLower();
                }
                else
                {
                    PYstr += item.ToString();
                }
            }
            return PYstr;
        }
时间: 2024-09-29 10:08:33

C# 汉语生成拼音(微软官方方案)的相关文章

Windows7下的免费虚拟机(微软官方虚拟机)

前言: 不是说windows7自带的虚拟机最好用,而是他是正式版的,免费的,仅仅要你是windows7用户,就能够免费使用: 事实上我最推荐的还是Vmware: 微软为什么提供免费的虚拟机呢? 由于vista的失败,微软认识到,假设不能为客户考虑,而单独考虑自己的技术先进性,会惹来非常多麻烦: 然而,vista和windows7的内核,都与xp有差别,有时无法兼容xp的应用: 非常多企业用户自行开发的应用或者购买的应用,是绑定在xp上的,然而微软有须要这些客户,怎么办?经过vista的失败,危机

微软官方的IE虚拟机

安装虚拟机对IE6浏览器进行测试,以前一直是这么干的.现在微软提供了纯粹的浏览器版本了. https://www.modern.ie/en-us/virtualization-tools#downloads 各个版本的浏览器都有. 微软官方的IE虚拟机,布布扣,bubuko.com

【微软官方】WDM与WDF的差异

总感觉自己对WDM与WDF之间的差异了解的不甚清楚,我比较赞同一句话:勿在浮沙筑高台.所以翻译一下微软官方的解释文档,仅作为自己的备忘,若有翻译不当的地方,原文:Differences Between WDM and WDF

针对勒索病毒WannaCrypt微软官方应对指南

如同其他大多数勒索软件一样,Ransom:Win32/WannaCrypt通过社会工程学尝试感染目标组织的环境,通常为带有恶意宏的Office文档附件的钓鱼邮件.一旦感染环境中的一台计算机后,该变种会尝试利用Microsoft在MS17-010补丁中修复的SMBv1的漏洞在内网中主动传播.这一蠕虫行为是真正让这一变种带来如此巨大影响的原因. https://technet.microsoft.com/zh-cn/library/security/ms17-010.aspx 微软于5月14日中午已

微软官方WINDOWS 10部署资料链接地址:Deploy Windows 10 with the Microsoft Deployment Toolkit

微软官方WINDOWS 10部署资料,写的非常详细,包括部署平台建立.镜像导入.样本机制作.应用程序安装.硬件驱动识别.WIN7升级等,是一个非常好的利用MDT 2013 UPDATE 1部署WINDOWS 10的资料,推荐阅读,难度中等. 链接地址:https://technet.microsoft.com/en-us/library/mt297535(v=vs.85).aspx Deploy Windows 10 with the Microsoft Deployment Toolkit 1

WINDOWS 7 PRO X86 2015年9月增量补丁包微软官方下载地址

WINDOWS 7 PRO X86 2015年9月增量补丁包,从Windowsupdate.log中提取的微软官方下载地址,大部分是2015年9月8日发布的,可以通过下载软件批量下载: http://download.windowsupdate.com/d/msdownload/update/software/secu/2015/08/windows6.1-kb3069114-x64_380cffc619454ec076daf6d00e14b4835da400ba.msu http://down

Win7 SP1语言包微软官方下载地址及使用方法 2

情形一:如果您的系统版本是企业版.旗舰版,可以在Windows update中检测语言包按照提示下载安装即可.如果觉得Windows update不方便的话,可以在本文第二部分中下载所需的语言包,下载完毕后双击 .exe 可执行文件就可以安装语言包. 安 装完成之后切换显示语言的方法:在开始菜单左下角的搜索框中输入“语言”作为关键字,并从搜索结果中选择“更改显示语言”,随后可以看到更改界面.在“选 择显示语言”下拉菜单中,列出了本机安装的所有语言包,从中选择要使用的语言,并单击“确定”,注销并重

WINDOWS 7 PRO 2015年9月增量补丁包微软官方下载地址

WINDOWS 7 PRO 2015年9月增量补丁包,从Windowsupdate.log中提取的微软官方下载地址,大部分是2015年9月8日发布的,可以通过下载软件批量下载: http://download.windowsupdate.com/d/msdownload/update/software/secu/2015/08/windows6.1-kb3069114-x64_380cffc619454ec076daf6d00e14b4835da400ba.msu http://download

.NET Framework 2.0 SP2微软官方版+.net

.net framework 2.0 Service Pack 2 是专为解决客户在 .NET Framework 2.0 发布后报告的问题而提供的累积更新.此外,此发行版为 .NET Framework 3.5 Service Pack 1 提供了性能改进和必备功能支持.请在系统需求一节中查看此部署程序包支持的操作系统.Microsoft Vista 的相应更新和 Microsoft Windows 2008 的相应更新可通过完整的 .NET Framework 3.5 service pac