首页 > 代码库 > 汉字处理组件

汉字处理组件

有时候项目中会根据用户姓名的拼音检索数据,微软专门提供了一个组件安装包来处理非英文的特殊语言,名称为 

Microsoft Visual Studio International Pack 

下载这个安装包,然后安装简体中文的组件

技术分享

 

默认的安装路径为:C:\Program Files (x86)\Microsoft Visual Studio International Pack\Simplified Chinese Pin-Yin Conversion Library

要在项目中使用这种汉字处理方法需要添加该目录下的dll文件:ChnCharInfo.dll

 

以下是这个简体中文包提供的方法

技术分享

测试代码:

技术分享
using Microsoft.International.Converters.PinYinConverter;using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace 获取汉字拼音{    class Program    {        static void Main(string[] args)        {            // 1.获取指定汉字的拼音            ChineseChar cc = new ChineseChar();            // 因为汉字有可能是多音字,所以循环遍历输出所有的拼音            foreach (var str in cc.Pinyins)            {                // 输出结果为:LE4,YUE4。(注意:拼音后面的数字代表声调)                Console.WriteLine(str);            }            // 2.获取这个汉字字符。            Console.WriteLine(cc.ChineseCharacter); // 输出结果:乐            // 3.获取这个字符的笔画数。             Console.WriteLine(cc.StrokeNumber); // 输出结果:5            // 4.获取这个字符的拼音个数。             Console.WriteLine(cc.PinyinCount);  // 输出结果:2            // 5.将给出的字符和实例字符的笔画数进行比较。输出结果为“乐” 字的笔画数减去要比较的汉字笔画数            Console.WriteLine(cc.CompareStrokeNumber()); // “乐”字的笔画数比“中”字的笔画数多1,输出结果:1            Console.WriteLine(cc.CompareStrokeNumber()); // “乐”字的笔画数和“主”字的笔画数一样多,输出结果:0            Console.WriteLine(cc.CompareStrokeNumber()); // “国”字的笔画数比“乐”字的笔画数多3,输出结果:-3            // 6.检索具有指定笔画数的字符个数。             Console.WriteLine(ChineseChar.GetCharCount(1));            // 7.检索具有指定笔画数的所有字符串。             char[] cSameStrokeNum = ChineseChar.GetChars(1);            foreach (var c in cSameStrokeNum)            {                Console.WriteLine(c);            }            // 8.获取给定拼音的所有同音字。             char[] cSamePinyin = ChineseChar.GetChars("shao4"); // PS:必须指定拼音的声调            foreach (var c in cSamePinyin)            {                Console.WriteLine(c);            }            // 9.还有很多其他方法            Console.ReadKey();        }    }}
View Code

 

汉字处理组件