C#汉字转拼音_Microsoft.PinYinConverter汉字转拼音
一、Microsoft.PinYinConverter 引入
1.Nuget命令引入
Install-Package Microsoft.PinYinConverter -Version 1.0.0
2.Nuget包管理引入
Nuget连接地址:NuGet Gallery | Microsoft.PinYinConverter 1.0.0
二、Microsoft.PinYinConverter 使用介绍
ChineseChar使用案例:
多音字返回多个读音,最后一位代表声调,每次只能转换一个字符
var chineseChar = new ChineseChar('解');
var pyStr = chineseChar.Pinyins;
Console.WriteLine(pyStr);
三、Microsoft.PinYinConverter 使用分装
1.多个文字转拼音,使用第一读音
2.获取首字母拼写
3.判断是否是多音字
4.获取笔画个数文章来源:https://www.toymoban.com/news/detail-444448.html
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模板网!