说明:使用微软提供的拼音组件ChnCharInfo.dll
1 方法一
//01 构建拼音对象 ChineseChar cc = new ChineseChar(txtHanZi.Text[0]); //02 创建拼音字符 string[] pinyin = cc.Pinyins.ToArray(); foreach (string str in pinyin) { txtPinYin.Text += str + " "; }
2 方法二
#region 方法二 获得一个字符串的的首字母 //01 获得待转化字符串 string str = txtHanZi.Text.ToString(); //02 定义一个新的拼音首字母缩写字符串 string newStr = string.Empty; //02 遍历字符串 foreach (char item in str) { ChineseChar cc = new ChineseChar( item); //获得拼音的多音字的第一个音节 string firstYIn = cc.Pinyins[0]; //获取第一个首字母 string firstChar = firstYIn[0].ToString(); newStr += firstChar; } //03 设置txtPinYin显示效果 txtPinYin.Text = newStr; #endregion
3 方法三
#region 方法三 将其进行封装 txtPinYin.Text = CaterCommon.PinYinHelper.GetInitials(txtHanZi.Text); #endregion
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Microsoft.International.Converters.PinYinConverter; namespace CaterCommon { public partial class PinYinHelper { public static string GetInitials(string str) { string initialsStr = string.Empty; foreach (char item in str) { ChineseChar cc = new ChineseChar( item); initialsStr += cc.Pinyins[0][0].ToString(); } return initialsStr; } } }
效果和方法二一样
时间: 2024-08-11 05:31:55