首先,去微软官网下载Microsoft Visual Studio International Pack语言包,下载地址如下:

https://www.microsoft.com/zh-cn/download/confirmation.aspx?id=15251

下载后,你会看到vsintlpack1.zip的压缩包,解压该压缩包,然后点击里面的CHSPinYinConv.msi进行安装,记住安装的路径,因为待会我们需要使用到里面的ChnCharInfo.dll库

如我的安装路径是“E:\Program Files (x86)\Microsoft Visual Studio International Pack\Simplified Chinese Pin-Yin Conversion Library\ChnCharInfo.dll”

如果你懒得下载和安装,其实我也是懒得操作上面的步骤,就是拿到一个dll库而已,麻烦。

这里直接提供ChnCharInfo.dll库文件下载地址:

https://pan.baidu.com/s/1X2NgKorHTLwujS6FkHqAWg

新建winform项目,然后添加引用ChnCharInfo.dll,添加引用的教程可以参考:

https://blog.csdn.net/xiangxianghehe/article/details/75050885

winform窗格界面如下:

完整代码如下:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Microsoft.International.Converters.PinYinConverter;    //需要自己添加的命名空间namespace 文字转拼音
{public partial class Form1 : Form{public Form1(){InitializeComponent();}private void Form1_Load(object sender, EventArgs e){}/// <summary>/// 汉字转拼音/// </summary>/// <param name="str">要转换的文字</param>/// <returns>返回转换的拼音结果(小写)</returns>public string GetPinYin(string str) {StringBuilder strResult = new StringBuilder();foreach(var item in str){try{ChineseChar chineseChar = new ChineseChar(item);string t = chineseChar.Pinyins[0].ToString();//由于返回的结果t是拼音加序号的字符串,故要去掉后面的序号strResult.Append(t.Substring(0,t.Length-1));}catch (Exception){strResult.Append(item.ToString());}}//因为转换得到的结果是全部大写,故在这里全部转换成小写return strResult.ToString().ToLower();}/// <summary>/// 获取拼音的首字母/// </summary>/// <param name="str"></param>/// <returns></returns>public string GetFirstPinYin(string str) {StringBuilder strResult = new StringBuilder();foreach (var item in str){try{ChineseChar chineseChar = new ChineseChar(item);string t = chineseChar.Pinyins[0].ToString();strResult.Append(t.Substring(0, 1));}catch (Exception){strResult.Append(item.ToString());}}return strResult.ToString().ToLower();}private void btnChange_Click(object sender, EventArgs e){//取得输入汉字输入框TextBox的文本string chineseInputStr=this.chineseInput.Text;//取得拼音的结果string resultStr = GetPinYin(chineseInputStr);//把取得拼音的结果赋值给拼音输出文本框TextBox中this.pinyinOut.Text = resultStr;}}
}

运行结果如下:

源码下载:

https://pan.baidu.com/s/1Ll_fbTT66mRSL6JY8g1Ibg

c# 文字转拼音(含源码下载)相关推荐

  1. Markdown编辑器:纯前端演示(可接入项目、含源码下载) - 总结篇

    可接入项目,提供全部代码下载. 通过本地html静态文件,演示效果. Editor.md是一款开源的.可嵌入的 Markdown 在线编辑器(组件),基于 CodeMirror.jQuery 和 Ma ...

  2. 人脸识别2:InsightFace实现人脸识别Face Recognition(含源码下载)

    人脸识别2:InsightFace实现人脸识别Face Recognition(含源码下载) 目录 人脸识别2:InsightFace实现人脸识别Face Recognition(含源码下载) 1. ...

  3. Qt creator5.7 OpenCV249之双边滤波(含源码下载)

    原理如下: 函数 void cv::bilateralFilter( InputArray src, OutputArray dst, int d, double sigmaColor, double ...

  4. Qt creator5.7 OpenCV249之图片膨化(含源码下载)

    首先介绍几个OpenCV的函数 void cv::dilate( inputArray src, outputArray dst, inputArray kernel, Point anchor=Po ...

  5. Qt creator5.7 OpenCV249之图片旋转(含源码下载)

    下面先来介绍OpenCV关于图像选择的函数 void cv::flip( InputArray src OutputArray dst, int flipCode) src-是要处理的原始图像, ds ...

  6. Java基于Redis实现“附近的人”(含源码下载)

    "附近的人"在社交类APP已成为标配的功能,Low一点的实现方式可以把坐标存至关系型数据库,通过计算的坐标点距离实现,这种计算可行但计算速度远不及内存操作级别的NoSql数据库. ...

  7. 文章抓取(含源码下载)

    最近都左做一些资源采集的工作,比如采集新闻,flash,图片等,下面我们通过一个小例子,来详细的说明一下我采集资源的步骤,希望各位能提点建议,不胜感激. 下面就开始吧!我们这次要采集的是这个少儿英语动 ...

  8. 《征服:JavaScript高级程序设计与应用实例》(含源码下载地址)

    新书出版,请大家多多指教. china-pub: http://www.china-pub.com/computers/common/info.asp?id=36733 第二书店 http://www ...

  9. C++ JsonCpp 使用(含源码下载)

    前言 JSON是一个轻量级的数据定义格式,比起XML易学易用,而扩展功能不比XML差多少,用之进行数据交换是一个很好的选择 JSON的全称为:JavaScript Object Notation ,顾 ...

最新文章

  1. https 证书验证等原理
  2. offsetLeft 解析
  3. BeanDefinitionRegistryPostProcessor​ 的处理源码流程
  4. [C#.NET 拾遗补漏]07:迭代器和列举器
  5. visio画图复制粘贴到word_怎么将visio绘图导入Word(visio绘图插入word后如何调整大小)...
  6. java基于ssm的企业职工工资管理系统
  7. 游戏视频怎么录制,游戏录制软件哪个好
  8. CSI笔记【3】:多进多出/MIMO技术
  9. 知乎文章如何复制下来
  10. 2022「第二届中国RPA+AI开发者大赛」正式收官
  11. 用Python写一个走迷宫的小程序(图形化:matplotlib,dfs,prim)
  12. 自动化技术实现目录全览
  13. Elasticsearch-ais使用方式
  14. MySQL Manual
  15. IntelliJ IDEA 2018.2.4 x64破解
  16. ROS2机器人笔记21-03-14
  17. 利用模板方法设计模式实现代码的利用的工程实践
  18. 15. 星际争霸之php设计模式--策略模式
  19. 来看看这位年轻的 eBay 小伙是如何成为 Committer
  20. 《人类简史》十四、开启未来(上)——智人的灭亡

热门文章

  1. 单播、组播、广播三者之间的区别
  2. W5100常见问题解答汇总(持续更新中)
  3. 企业级微服务构建-01搭建和使用Maven私有仓库(Nexus)-03备份和恢复
  4. 拉梅系数以及雅克比行列式
  5. MIME与mime.types
  6. CMOS/CCD图像传感器的工作原理
  7. 2022年系统集成项目管理工程师考试知识点:信息安全
  8. 数码摄影入门之十 数码相片后期处理
  9. kettle http 方式调用webservice
  10. 破解rarfile extractall 的中文密码的错误编码