C# 汉字与拼音互转的实现示例
作者:Csharp 发布时间:2022-03-06 06:50:20
标签:C#,汉字,拼音
这个功能,大家也都可以去百度以下,千篇一律都自己写的(抄的)封装好的公共类,此处还是得膜拜下原创的大佬,可以花时间去搞这个,我看着都头皮发麻。
对于一个有代码洁癖的码农来说,我并不喜欢那种方式(自己抄下来封装?那我图个啥?),所以我们直接从NuGet去获取一个封装好的DLL:NPinyin
此DLL提供了三个方法(重载不算)
汉字转拼音拼音转汉字(单字)获取汉字的拼音首字母
实现功能:
输入汉字获取拼音或者拼音的首字母,输入拼音获取对应的汉字
开发环境:
开发工具: Visual Studio 2013
.NET Framework版本:4.5
实现代码:
/// <summary>
/// 汉字转拼音
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnPinyin_Click(object sender, EventArgs e)
{
txtPinyin.Text = NPinyin.Pinyin.GetPinyin(txtChinese.Text);
}
/// <summary>
/// 拼音转汉字(单字)
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnChinese_Click(object sender, EventArgs e)
{
txtChinese.Text = NPinyin.Pinyin.GetChineseText(txtPinyin.Text);
}
/// <summary>
/// 获取汉字首字母
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnFirst_Click(object sender, EventArgs e)
{
txtPinyin.Text = NPinyin.Pinyin.GetInitials(txtChinese.Text);
}
实现效果:
简单来说,这个功能其实也是相当于一本汉语词典的功能。
当然了,上面说的开源的公共类,最起码扩展性不错,遇到没有的文字的时候可以自定义新增。
由简入繁,拿来即用
来源:https://blog.csdn.net/qq_27410185/article/details/123506953


猜你喜欢
- 本文为大家分享了Java实现文件上传下载功能的具体代码,供大家参考,具体内容如下前端通过form表单的enctype属性,将数据传递方式修改
- 简介Android给我们提供了一种轻量级的异步任务类AsyncTask。该类中实现异步操作,并提供接口反馈当前异步执行结果及进度,这些接口中
- 前言JAVA中在运用数组进行排序功能时,一般有四种方法:快速排序法、冒泡法、选择排序法、插入排序法。本文就给大家介绍了关于最简单易懂的jav
- 记得在thinkphp框架中,模型名会自动转换为对应下划线的表名,如,UserType 自动转化为user_type,在平时写程序中很多地方
- 最近比较空闲没有项目做,于是乎捋了捋平时工作会遇到的一些常见问题,首先想到了多用户登录限制问题,下面就对此问题做一点思考讲解。
- 简介FTP是TCP/IP协议组中的协议之一,包括两个组成部分,一是FTP服务端,二是FTP客户端,其中FTP服务器用来存储文件,用户可以使用
- java @Value("${}")获取不到配置文件中值1、property.yml配置spring: ma
- 使用ManagedWifi查看当前Wifi信号并选择wifiusing System;using System.Collections.Ge
- 本文实例讲述了C#动态执行批处理命令的方法。分享给大家供大家参考。具体方法如下:C# 动态执行一系列控制台命令,并允许实时显示出来执行结果时
- 一、什么是递归方法调用自己的行为就是递归,递归必须要有终止条件,不然它会无限递归。1.先来看一下一个递归的例子此程序的Fact方法从大到小地
- 本文实例讲述了C#获取文件创建时间的方法。分享给大家供大家参考。具体如下:C#获取文件创建时间,主要用到了FileInfo的Creattio
- wait(), notify(), notifyAll()等方法介绍在Object.java中,定义了wait(), notify()和no
- Mavan pom文件引用依赖 <!-- hutool工具类--><dependency><gro
- Java 目前已经出到13的版本,但是国内大部分公司应该都停留在 Java 8 的版本(不敢承担升级带来的风险)。在Java8中给我们带来了
- 本文实例为大家分享了Android自定义开关的具体代码,供大家参考,具体内容如下以 ToggleColorY 为例分析, ToggleIma
- 一、常量用final修饰(也称最终变量)常量在声明时必须赋初值,赋值后不能再修改值常量名通常用全大写字母表示声明时需要添加final或sta
- 成员类型访问权限低于字段本身现在假设你有一个小兵类,他的访问权限是仅限当前程序集。internal class 小兵{public int
- 1、谷歌浏览器配置管理在代理服务器中,按上图进行设置,可以把localhost换成 127.0.0.1 ,端口换成你想设置的,但是不要与别的
- 前言公司的邮件系统用的是 * 的 Lotus notes, 你敢信?最近要实现一个功能,邮件提醒功能,就是通过自动发送提醒邮件 前
- 1.前提已经配置Sleuth,可参考2.什么是Zipkin?官网:https://zipkin.io/大规模分布式系统的APM工具( App