汉字转拼音 汉字翻译拼音
前不久看到有的朋友实现对商品名称拼音的录入,发现他的实现方式是手动输入的,—_—#、同志们,福利来了!
微软为了开发者实现国际化语言的互转,提供了Microsoft Visual Studio International Pack,这个扩展包里面有中文、日文、韩文、英语等各国语言包,并提供方法实现互转、获取拼音、获取字数、甚至获取笔画数等等。
在这里示例讲的是输入汉字,获取其拼音,获取拼音和获取拼音首字母实现效果分别如下:
首先,去微软官网下载Microsoft Visual Studio International Pack语言包,下载地址分别如下:
Microsoft Visual Studio International Pack 1.0 SR1、Microsoft Visual Studio International Feature Pack 2.0
下载后分别是“vsintlpack1.zip”、“Vsintlpack2.msi”、双击“Vsintlpack2.msi”安装、路径随意、但是要记得、因为一会要引用的、
安装“Vsintlpack2.msi”之后、解压“vsintlpack1.zip”、里面包含七个语言包、
例如中文转拼音“CHSPinYinConv.msi”、简体繁体互转“CHTCHSConv.msi”等等。。
在这里我们用到的是“CHSPinYinConv.msi”、双击安装成功后、打开Visual Studio、新建一个WinForm项目、窗体布局如上图所示、
首先:添加刚刚安装的语言包引用:
“D:Program Files (x86)Microsoft Visual Studio International PackSimplified Chinese Pin-Yin Conversion LibraryChnCharInfo.dll”
默认是C盘、在这里我安装在D盘了,然后添加using引用:
1 using Microsoft.International.Converters.PinYinConverter;//导入拼音相关
创建获取拼音的方法:
1 /// <summary> 2 /// 汉字转化为拼音 3 /// </summary> 4 /// <param name="str">汉字</param> 5 /// <returns>全拼</returns> 6 public static string GetPinyin(string str) 7 { 8 string r = string.Empty; 9 foreach (char obj in str)10 {11 try12 {13 ChineseChar chineseChar = new ChineseChar(obj);14 string t = chineseChar.Pinyins[0].ToString();15 r += t.Substring(0, t.Length - 1);16 }17 catch18 {19 r += obj.ToString();20 }21 }22 return r;23 }
创建获取汉字拼音首字母的方法:
1 /// <summary> 2 /// 汉字转化为拼音首字母 3 /// </summary> 4 /// <param name="str">汉字</param> 5 /// <returns>首字母</returns> 6 public static string GetFirstPinyin(string str) 7 { 8 string r = string.Empty; 9 foreach (char obj in str)10 {11 try12 {13 ChineseChar chineseChar = new ChineseChar(obj);14 string t = chineseChar.Pinyins[0].ToString();15 r += t.Substring(0, 1);16 }17 catch18 {19 r += obj.ToString();20 }21 }22 return r;23 }
然后在“转拼音”按钮的点击事件中调用上述方法:
1 // 汉字转拼音2 private void btn_One_Click(object sender, EventArgs e)3 {4 string source = this.txt_ChineseCharacter_One.Text.Trim(); // 得到输入的源字符5 string result = GetPinyin(source); // 调用方法,获取拼音6 this.txt_Pinyin_One.Text = result;7 }
在“转首字母”按钮点击事件中调用上述方法:
1 // 转首字母2 private void btn_Two_Click(object sender, EventArgs e)3 {4 string source = this.txt_ChineseCharacter_One.Text.Trim(); // 得到输入的源字符5 string result = GetFirstPinyin(source); // 调用方法,获取拼音6 this.txt_Pinyin_One.Text = result;7 }
到此,已经完成了80%,运行程序,你会发现,当点击“转拼音”的时候,结果是这样子的:
并不是我开始说的那种“Gu Ying”的效果啊、这是因为我在获取拼音的时候简单的处理了一下:
1 // 汉字转拼音 2 private void btn_One_Click(object sender, EventArgs e) 3 { 4 string source = this.txt_ChineseCharacter_One.Text.Trim(); // 得到输入的源字符 5 6 string result = string.Empty; // 转拼音的结果 7 string temp = string.Empty; // 下面foreach用到的临时变量 8 foreach (char item in source) // 遍历每个源字符 9 {10 temp = GetPinyin(item.ToString()); // 将每个字符转拼音11 // 处理:获取首字母大写、其余字母小写12 result += (String.Format("{0}{1} ", temp.Substring(0, 1).ToUpper(), temp.Substring(1).ToLower()));13 }14 15 //string result = GetPinyin(source); // 调用方法,获取拼音16 this.txt_Pinyin_One.Text = result;17 }
OK、到此、这个功能已经实现完成了,还有其余的语言包功能,和此类似,大家可以百度“Microsoft Visual Studio International Pack使用”、各种语言之间的互转及功能示例就出来了。
更多阅读
QQ聊天无法输入汉字,只能输入字母怎么办? qq聊天只能打拼音
QQ聊天无法输入汉字,只能输入字母怎么办?——简介a依那伐曾经多次遇到这样的情况:QQ聊天聊得正起劲时,突然完全变成英语字母了,无法输入中文了,这时候突然很郁闷。如何让QQ聊天窗口重新正常出现汉字呢?QQ聊天无法输入汉字,只能输入字母怎么
转载 是美男啊朴信惠默默无语韩文歌词中文翻译拼音注释 默默无语音译歌词
原文地址:是美男啊朴信惠默默无语韩文歌词中文翻译拼音注释作者:糖糖铉空하지 말걸 그랬어 모른척 해버릴걸han ji man guo ku li sou mu run
康熙字典部首检索-康熙字典偏旁部首查字 康熙字典部首演变
按拼音检索按部首检索康熙字典扫描版实用查询五笔查询简繁转换汉字转拼音IP查询天
天雷滚滚谷歌搞笑英文朗读 天雷滚滚电视剧
最近网上疯狂流传一则谷歌朗读的“春哥纯爷们”的视频,令无数网友尽折腰(被雷倒的)。视频中,只见一只鼠标不断地复制粘贴内容到谷歌翻译中,单击朗读按钮,就听到一阵阵很雷很强大的英语朗读从自己的音响或耳机里冒出来,仔细一听:居然是中文的
注音儿歌拼音标注儿歌 -春天在哪里,学歌学汉字学拼音! 春天在哪里儿歌mp3
注音儿歌(拼音标注儿歌)-春天在哪里,学歌学汉字学拼音!博主精心整理,精力有限,如有文字和拼音的错误,欢迎指正!chūn tiān zài nǎ lǐ春天 在 哪 里chūn tiān zài nǎ lǐ yɑ?