C#汉字转拼音_Microsoft.PinYinConverter汉字转拼音

这篇具有很好参考价值的文章主要介绍了C#汉字转拼音_Microsoft.PinYinConverter汉字转拼音。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

C#汉字转拼音_Microsoft.PinYinConverter汉字转拼音

一、Microsoft.PinYinConverter 引入

1.Nuget命令引入

Install-Package Microsoft.PinYinConverter -Version 1.0.0

2.Nuget包管理引入

C#汉字转拼音_Microsoft.PinYinConverter汉字转拼音

 Nuget连接地址:NuGet Gallery | Microsoft.PinYinConverter 1.0.0

二、Microsoft.PinYinConverter 使用介绍

ChineseChar使用案例:

多音字返回多个读音,最后一位代表声调,每次只能转换一个字符

var chineseChar = new ChineseChar('解');
var pyStr = chineseChar.Pinyins;
Console.WriteLine(pyStr);

C#汉字转拼音_Microsoft.PinYinConverter汉字转拼音

三、Microsoft.PinYinConverter 使用分装

1.多个文字转拼音,使用第一读音

2.获取首字母拼写

3.判断是否是多音字

4.获取笔画个数

public class MsPinYinHelper
{
    #region 汉子转拼音
    /// <summary>
    /// 汉字转全拼
    /// </summary>
    /// <param name="chinese">汉字</param>
    /// <returns></returns>
    public static string PinYin(string chinese)
    {
        string retValue = string.Empty;

        foreach (char chr in chinese)
        {
            try
            {
                if (ChineseChar.IsValidChar(chr))
                {
                    ChineseChar chineseChar = new ChineseChar(chr);
                    string t = chineseChar.Pinyins[0].ToString();
                    retValue += t.Substring(0, t.Length - 1);
                }
                else
                {
                    retValue += chr.ToString();
                }
            }
            catch (Exception e)
            {
                Console.WriteLine("全拼转化出错!" + e.Message);
                return string.Empty;
            }
        }

        return retValue;
    }
    /// <summary>
    /// 汉字转首拼
    /// </summary>
    /// <param name="chinese">汉字</param>
    /// <returns></returns>
    public static string FirstPinYin(string chinese)
    {
        string retValue = string.Empty;

        foreach (char chr in chinese)
        {
            try
            {
                if (ChineseChar.IsValidChar(chr))
                {
                    ChineseChar chineseChar = new ChineseChar(chr);
                    string t = chineseChar.Pinyins[0].ToString();
                    retValue += t.Substring(0, 1);
                }
                else
                {
                    retValue += chr.ToString();
                }
            }
            catch (Exception e)
            {
                Console.WriteLine("首字母转化出错!" + e.Message);
                return string.Empty;
            }
        }

        return retValue;
    }
    #endregion

    #region 判断多音字
    /// <summary>
    /// 判断汉字是否是多音字
    /// </summary>
    /// <param name="chr">单个汉字字符</param>
    /// <returns></returns>
    public static bool IsPolyphone(char chr)
    {
        if (ChineseChar.IsValidChar(chr))
        {
            ChineseChar chineseChar = new ChineseChar(chr);
            return chineseChar.IsPolyphone;
        }
        else
        {
            return false;
        }
    }
    /// <summary>
    /// 判断汉字是否是多音字
    /// </summary>
    /// <param name="chinese">字符串形式的汉字,如果是多个,只判断首字</param>
    /// <returns></returns>
    public static bool IsPolyphone(string chinese)
    {
        if (ChineseChar.IsValidChar(chinese[0]))
        {
            ChineseChar chineseChar = new ChineseChar(chinese[0]);
            return chineseChar.IsPolyphone;
        }
        else
        {
            return false;
        }
    }
    #endregion

    #region 获取拼音个数
    /// <summary>
    /// 取得汉字拼音个数
    /// </summary>
    /// <param name="chinese">汉字字符串,非汉字字符不算长度</param>
    /// <returns></returns>
    public static int PinYinCount(string chinese)
    {
        int retCount = 0;

        foreach (char chr in chinese)
        {
            if (ChineseChar.IsValidChar(chr))
            {
                ChineseChar chineseChar = new ChineseChar(chr);
                retCount += chineseChar.PinyinCount;
            }
        }

        return retCount;
    }
    /// <summary>
    /// 取得汉字拼音个数
    /// </summary>
    /// <param name="chr">单个汉字字符,非汉字返回0</param>
    /// <returns></returns>
    public static int PinYinCount(char chr)
    {
        if (ChineseChar.IsValidChar(chr))
        {
            ChineseChar chineseChar = new ChineseChar(chr);
            return chineseChar.PinyinCount;
        }
        else
        {
            return 0;
        }
    }
    #endregion

    #region 获取笔画数
    /// <summary>
    /// 取得汉字笔画数
    /// </summary>
    /// <param name="chinese">汉字字符串,非汉字的字符不算笔画</param>
    /// <returns></returns>
    public static int StrokeNumber(string chinese)
    {
        int retCount = 0;

        foreach (char chr in chinese)
        {
            if (ChineseChar.IsValidChar(chr))
            {
                ChineseChar chineseChar = new ChineseChar(chr);
                retCount += chineseChar.StrokeNumber;
            }
        }

        return retCount;
    }
    /// <summary>
    /// 取得汉字笔画数
    /// </summary>
    /// <param name="chr">单个汉字字符,非汉字返回0</param>
    /// <returns></returns>
    public static int StrokeNumber(char chr)
    {
        if (ChineseChar.IsValidChar(chr))
        {
            ChineseChar chineseChar = new ChineseChar(chr);
            return chineseChar.StrokeNumber;
        }
        else
        {
            return 0;
        }
    }
    #endregion
}

更多:文章来源地址https://www.toymoban.com/news/detail-444448.html

C# 中文简体中文繁体转换_ChineseConverter

C# 正则表达式使用_C# Regex使用整理

C# 正则使用_正则表达式使用整理(一)

Kestrel简介_Kestrel Web 服务器简介

到了这里,关于C#汉字转拼音_Microsoft.PinYinConverter汉字转拼音的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 汉字的音韵之美:中文拼音的魅力之旅

    导语:中文拼音作为汉字的语音表达方式,已经深入人心。它不仅有助于汉字的学习与传播,还为汉语的国际化铺平了道路。本文将为您详细介绍中文拼音的起源、发展及其在我国教育、科技、文化等方面的广泛应用,带您领略这一古老而又现代的语音体系的独特魅力。 汉字

    2024年02月03日
    浏览(39)
  • UnityC#实现中文汉字转拼音-使用微软CHSPinYinConv库

    前段时间使用NPinyin.dll实现中文转拼音获取首字母,近期版本迭代发现不能用了,感觉不好使,Encoding编码不知道出现啥问题,啥错误都不报,提示也没有,直接执行Encoding code=Encoding.GetEncoding(“gb2312”);这句代码后,后面的语句全部没执行了。找不到原因, 还以为是某些库文

    2024年02月16日
    浏览(45)
  • Office365 Excel中使用宏将汉字转拼音

    文件 - 选项 - 信任中心 - 信任中心设值 - 宏设值 启用VBA宏 启用VBA宏时启用Excel 4.0宏 信任对VBA工程对象模型的访问 视图 - 查看宏 填写名字创建宏:getpy 填入下面代码 保存,点击否,另存类型为“excel启用宏的工作簿”,然后再保存 使用方式 =getpy(要转换拼音的单元格编号)

    2024年02月10日
    浏览(42)
  • JavaScript、微信小程序 根据汉字拼音首字母进行归类分组

    在微信小程序里面不支持这个localeCompare方法,所以有了下面的方法 我们需要一个 开源的汉字库 ,也就是码表。这个库就可以。git库 不想去git下载直接拉到最底下有js文件,直接复制就行。 然后页面引入 china.js代码

    2024年02月11日
    浏览(43)
  • 批量将Excel中的第二列内容从拼音转换为汉字

    要批量将Excel中的第二列内容从拼音转换为汉字,您可以使用Python的openpyxl库来实现。下面是一个示例代码,演示如何读取Excel文件并将第二列内容进行拼音转汉字: from openpyxl import load_workbook from xpinyin import Pinyin # 打开Excel文件 wb = load_workbook(\\\'your_excel_file.xlsx\\\') # 选择要操作的

    2024年02月12日
    浏览(41)
  • microsoft.office.interop.word 怎样 读取 某个汉字 字体颜色为红色

    SKY[管理]筱傑 @SKY[机器]筱淋 microsoft.office.interop.word 怎样 读取 某个汉字 字体颜色为红色呢? 要读取某个汉字的字体颜色是否为红色,您可以使用Microsoft.Office.Interop.Word来进行操作。以下是一个示例代码,可以帮助您实现该功能: 请注意,您需要替换\\\"your_document_path.docx\\\"为您要

    2024年02月09日
    浏览(51)
  • C#将货币金额数字转大写汉字

    目录 一、对输入数字的处理 二、源码 1、Main() 2.类库         用正则表达式对输入的数字判断是否符合货币格式,小数点前的数字串的长度是否不大于13。

    2024年01月18日
    浏览(44)
  • C#用正则表达式获取字符串中汉字的数量

    目录 一、关于字符串和判断其组成常识 二、用正则表达式获取字符串中汉字的数量 1.字符是否为汉字的正则表达式 2.实例 3.生成结果 三、相关知识点 1.Regex.IsMatch 方法          字符串中可以包括数字、字母、汉字或者其他字符。使用Char类型的IsDigit静态方法可以判断字

    2024年01月17日
    浏览(44)
  • C# Microsoft.ClearScript.V8脚本使用

    微软的.net是非常强大和灵活的,除了C#体系脚本扩展,也支持其他流行的脚本扩展,Microsoft.ClearScript.V8就是一个.NET绑定到Google V8的脚本引擎。它允许.NET应用程序直接从JavaScript代码中调用函数,并返回JavaScript类型。ClearScript.V8可以使用各种JavaScript库(比如jQuery)来提高工作效

    2024年02月08日
    浏览(36)
  • 使用Microsoft Visual Studio编写C#上位机(串口助手)

    最近跟着刘工写了一套用于单片机与电脑通信的串口助手,此处将自己手敲的代码记录下来,供大家一起学习交流。 一、程序界面   程序界面 程序界面说明    二、代码(Form1.cs)  三、备注 此处在Form1的属性中,将AutoSize设为True,AutoScroll设为True,AutoScaleMode设为Font,以应

    2024年02月11日
    浏览(55)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包