C# 使用微软的Visual Studio International Pack 类库提取汉字拼音首字母

标签: 微软 visual studio | 发表时间:2011-06-04 10:01 | 作者:风影话费充值专营店 Haipeng
出处:http://www.cnblogs.com/

昨天经过网友提醒,提取汉字拼音的方法可以使用微软的一个类库 Visual Studio International Pack ,今天试了一试,确实好用!下面分享下使用方法:

首先下载Visual Studio International Pack 2.0,官方下载地址:http://www.microsoft.com/downloads/zh-cn/details.aspx?FamilyID=7D1DF9CE-4AEE-467F-996E-BEC826C5DAA2。下载完毕后安装,运行文件VSIPSetup.msi 安装 (x86操作系统上的默认安装目录是 C:\Program Files\Microsoft Visual Studio International Feature Pack 2.0\) 。安装完毕后,需要在VS里添加引用,分别引用:C:\Program Files\Microsoft Visual Studio International Pack\Simplified Chinese Pin-Yin Conversion Library(拼音)下和C:\Program Files\Microsoft Visual Studio International Pack\Traditional Chinese to Simplified Chinese Conversion Library and Add-In Tool(繁简互转)下的dll 即可使用。

完成上面的工作后,使用方法就非常简单了,下面看代码:

 

using Microsoft.International.Converters.PinYinConverter;//导入拼音相关

namespace WebApplication2
{
    
public class Class1
    {   
        
/// <summary> 
        
/// 汉字转化为拼音
        
/// </summary> 
        
/// <param name="str">汉字</param> 
        
/// <returns>全拼</returns> 
        public static string GetPinyin(string str)
        {
            
string r = string.Empty;
            
foreach (char obj in str)
            {
                
try
                {
                    ChineseChar chineseChar 
= new ChineseChar(obj);
                    
string t = chineseChar.Pinyins[0].ToString();
                    r 
+= t.Substring(0, t.Length - 1);
                }
                
catch
                {
                    r 
+= obj.ToString();
                }
            }
            
return r;
        }

        
/// <summary> 
        
/// 汉字转化为拼音首字母
        
/// </summary> 
        
/// <param name="str">汉字</param> 
        
/// <returns>首字母</returns> 
        public static string GetFirstPinyin(string str)
        {
            
string r = string.Empty;
            
foreach (char obj in str)
            {
                
try
                {
                    ChineseChar chineseChar 
= new ChineseChar(obj);
                    
string t = chineseChar.Pinyins[0].ToString();
                    r 
+= t.Substring(01);
                }
                
catch
                {
                    r 
+= obj.ToString();
                }
            }
            
return r;
        }
    }
}

 

调用方法:(注意先引用)

GetPinyin("风影");//获取全拼
GetFirstPinyin("风影");//获取首字母

 

是不是非常简单呢?有了这个类库就省事多了!顺便再补充一下繁简体互转的方法,某些时候可能会用到:

先导入

using Microsoft.International.Converters.TraditionalChineseToSimplifiedConverter;

        /// <summary> 
        
/// 简体转换为繁体
        
/// </summary> 
        
/// <param name="str">简体字</param> 
        
/// <returns>繁体字</returns> 
        public static string GetTraditional(string str)
        {
            
string r = string.Empty;
            r 
= ChineseConverter.Convert(str, ChineseConversionDirection.SimplifiedToTraditional);
            
return r;
        }
        
/// <summary> 
        
/// 繁体转换为简体
        
/// </summary> 
        
/// <param name="str">繁体字</param> 
        
/// <returns>简体字</returns> 
        public static string GetSimplified(string str)
        {
            
string r = string.Empty;
            r 
= ChineseConverter.Convert(str, ChineseConversionDirection.TraditionalToSimplified);
            
return r;
        }


该类库的功能概述

Visual Studio International Feature Pack 1.0版的包括以下功能:

  • East Asia Numeric Formatting Library - 支持将小写的数字字符串格式化成简体中文,繁体中文,日文和韩文的大写数字字符串。
  • Japanese Kana Conversion Library - 支持将日文假名(Kana)转化为另一种日文字符。
  • Japanese Text Alignment Library - 支持日文特有的一种对齐格式。
  • Japanese Yomi Auto-Completion Library - 类库支持感知日文输入法的输入自动完成和一个文本框控件的示例。
  • Korean Auto Complete TextBox Control - 支持韩文输入法的智能感知和输入自动完成的文本框控件。
  • Simplified Chinese Pin-Yin Conversion Library - 支持获取简体中文字符的常用属性比如拼音,多音字,同音字,笔画数。
  • Traditional Chinese to Simplified Chinese Conversion Library and Add-In Tool - 支持简繁体中文之间的转换。该组件还包含一个Visual Studio集成开发环境中的插件(Add-in)支持简繁体中文资源文件之间的转换。

     

    Visual Studio International Feature Pack 2.0 是对 1.0 版本的扩展,包含一组控件和类库:

    • Yomigana Framework 包含了类库和控件。
      • 类库:Yomigana 类库容许对串(string)类型加注 Yomigana,同时也支持对一般类型的注解功能,任何实现了IEnumerable接口的对象都可以被串类型和泛型的实例注解。为了简化复杂的注解字符串比较特设计了支持各种日文比较选项的比较类型。
        • 通用的一些类,用泛型实现对一个可枚举的类型注音。
        • 特殊目的的一些类,用以上泛型实现对一个字符串用某种类型中注音。
        • 特殊目的的一些StringAnnotation 类,用以上泛型实现对一个字符串用字符串注音,包括解析和格式化功能。
        • 一个比较器类,使用以上类实现比较字符串。
        • 一个实现了 IEnumerable <string> 的数据结构,把一个字符串分成枚举的字符串段,并用 IEnumerator <string> 输出。
      • 控件:
        • 增强的Ajax/WPF/WinForm 文本框(TextBox)控件 用来根据用户的输入捕获读音。
        • 一个增强的使用Ruby标签的ASP.NET Label控件。
    • Chinese Text Alignment Class Library and TextBox Controls 包含支持简体中文文本对齐的WinForm 和 WPF 的TextBox控件, 以及供帮助开发人员很容易地按中文文本对齐显示字符串的一个类库。
    • Chinese Auto Complete Class Library and TextBox Controls 包含支持感知简体中文和繁体中文输入法并自动完成的WinForm 和 WPF 的TextBox控件, 以及供开发人员很容易地向标准控件添加感知输入法并自动完成功能的一个类库。
    • Korean Auto Complete Class Library and ComboBox Controls 包含支持感知韩语输入法并自动完成的WinForm 和 WPF 的ComboBox控件, 以及供开发人员很容易地向标准控件添加感知输入法并自动完成功能的一个类库。
    • Numeric Formatting Class Library 包含支持五种语言的数字格式化成文字的类, 2.0 版支持格式化阿拉伯数字为阿拉伯文字。


    可见,这个类库在开发国际化程序时是非常实用的。 

  • 作者: 风影话费充值专营店 发表于 2011-06-04 10:01 原文链接

    评论: 16 查看评论 发表评论


    最新新闻:
    · iCloud 的四大悬念(2011-06-04 22:37)
    · 挟“草民”以令诸侯,苹果想做新形态运营商?(2011-06-04 22:35)
    · 腾讯电商帝国(2011-06-04 22:27)
    · 一路好走 palm.com(2011-06-04 22:21)
    · Android平板应用匮乏 开发者积极性难调动(2011-06-04 22:14)

    编辑推荐:Microsoft NLayerApp案例理论与实践 - 基础结构层(数据访问部分)

    网站导航:博客园首页  我的园子  新闻  闪存  小组  博问  知识库

    相关 [微软 visual studio] 推荐:

    微软发布最新开发工具Visual Studio LightSwitch

    - ghx88 - cnBeta.COM
    感谢1美元PaypalVPS的投递. 微软向微软开发人员网络(MSDN)用户发布了最新的软件开发工具Visual Studio LightSwitch. 这个开发工具利用模板和快捷键简化商务应用程序的开发. LightSwitch是面向对编程艺术不太精通的商务应用程序开发人员的一个新工具.

    Visual Studio 2012和.NET Framework 4.5发布

    - - 博客 - 伯乐在线
    摘要:好消息,微软负责Visual Studio部门的公司副总裁Jason Zander发表博客,宣布Visual Studio 2012和.NET Framework 4.5现在已经可以下载,同时提供MSDN订户、付费版本、试用版和免费Express版. 此外,他还列举了升级到Visual Studio 2012的十二大理由.

    C# 使用微软的Visual Studio International Pack 类库提取汉字拼音首字母

    - Haipeng - 博客园-首页原创精华区
    昨天经过网友提醒,提取汉字拼音的方法可以使用微软的一个类库 Visual Studio International Pack ,今天试了一试,确实好用. 首先下载Visual Studio International Pack 2.0,官方下载地址:http://www.microsoft.com/downloads/zh-cn/details.aspx?FamilyID=7D1DF9CE-4AEE-467F-996E-BEC826C5DAA2.

    《Visual Studio插件》(Whole Tomato Visual Assist X)v10.6.1859.0[压缩包]

    - Bai - 软件 VeryCD电驴大全 - 电驴资源订阅
    中文名: Visual Studio插件. 英文名: Whole Tomato Visual Assist X. 版本: v10.6.1859.0. 制作发行: Whole Tomato Software, Inc.. 问题反馈: http://www.wholetomato.com/support/default.asp.

    分享一些非常好用的Visual Studio扩展

    - 尖头叉子 - 博客园-首页原创精华区
    作者: 李永京 发表于 2010-06-11 22:57 原文链接 阅读: 4189 评论: 37. Visual Studio 2010新增“扩展管理器”的功能,可用于添加、移除、启用和禁用Visual Studio扩展. 我们可以从Visual Studio Gallery(Visual Studio库)网站上安装扩展,这些扩展一般是VSIX包格式,包括项目模板、项模板、工具箱项、托管扩展框架(MEF)组件和VSPackage.

    PDC 2010:C#与Visual Basic的未来(上)

    - Mikel - 老赵点滴 - 追求编程之美
    PDC不愧为微软最高级的技术人员专业会议,看得我直呼过瘾. 前几天在PDC 2010会议上Anders Hejlsberg发表了一场名为“The Future of C# and Visual Basic”的演说,谈论了未来C#和VB中最为重要的两个特性:“异步(Async)”及“编译器即服务(Compiler as a Service)”.

    PDC 2010:C#与Visual Basic的未来(中)

    - Mikel - 老赵点滴 - 追求编程之美
    前几天在PDC 2010会议上Anders Hejlsberg发表了一场名为“The Future of C# and Visual Basic”的演说,谈论了未来C#和VB中最为重要的两个特性:“异步(Async)”及“编译器即服务(Compiler as a Service)”. 我现在对这场演讲进行总结,但不会像上次《编程语言的发展趋势及未来方向》那样逐句翻译,而是以Anders的角度使用一种简捷合适的方式表述其完整内容.

    室内设计公司Studio O+a

    - valid00 - 阮一峰的网络日志
    上个月,Dreamhost贴出了新办公室的照片. 设计者是一家叫做Studio O+a的室内设计公司,Facebook、Yelp、Paypal、StubHub、Shopping.com等公司的办公室,都出自它之手. 我发现,它的设计有三个显著特点:宽敞的布局,舒适的环境,轻松随意的气氛. 先看一下,Yelp的办公室.

    Ashampoo Burning Studio 10 绿色便携版

    - yasy - 姥姥精品软件坊
           Ashampoo Burning Studio 10 体积不大(100M左右),功能简单实用,完全可以媲美体积巨大的Nero. 有了它,你可以刻录自己的数据光盘、音乐CD、视频DVD,甚至蓝光光盘;并且可以抹除可擦写光盘、查看光盘信息、制作封面、制作启动目录等. 程序整合了Burning Studio、Movie Shrink & Burn、BurnYa.

    二十年顺风顺水:Visual Basic生日快乐!

    - FiO_chn - cnBeta.COM
    猛然回首才发现,Visual Basic语言已经走过了二十个寒暑. 在这二十年中,它发展成为世界上使用人数最多的一种语言,而且至今仍然没有任何衰退的趋势. 在此我们也衷心地祝愿VB能够越走越好. 1991年5月20日,微软推出了Visual Basic 1.0版,当时引起了很大的轰动. 这个连接编程语言和用户界面的进步被称为Tripod(或者Ruby),最初的设计是由阿兰・库珀(Alan Cooper)完成的.