1. 中文转拼音
知识点:Nuget 引用 Microsoft.PinYinConverter
示例:
Console.WriteLine("========== 示例:获取汉字的拼音 =========="); Console.Write("输入一段话:"); var txt = Console.ReadLine(); var sb = new StringBuilder(); foreach (char t in txt) { if (ChineseChar.IsValidChar(t)) { if (t != txt.First()) sb.Append(" "); var cCh = new ChineseChar(t); sb.Append(cCh.Pinyins.FirstOrDefault().Trim(‘1‘, ‘2‘, ‘3‘, ‘4‘, ‘5‘).ToLower()); } else { sb.Append(t); } } Console.WriteLine("拼音是:" + sb.ToString());
ChineseChar类的其他用法
//1、静态方法: // ->GetCharCount(Inter16) 检索具有指定笔画数的字符个数。 // ->GetChars(string) 返回具有相同的指定拼音的字符串列表 // ->GetChars(Inter16) 返回具有指定笔画的所有汉字。 // ->GetHomophoneCount(string) 检索具有指定拼音的字符数。 // ->GetStrokeNumber(Char) 检索指定字符的笔画数。 // ->IsHomophone(Char, Char) 识别给出的两个字符是否是同音字。 // ->IsValidChar(Char) 识别给出的字符串是否是一个有效的汉字字符。 // ->IsValidPinyin(String) 识别给出的拼音是否是一个有效的拼音字符串。 // ->IsValidStrokeNumber(Int16) 识别给出的笔画数是否是一个有效的笔画数。 //2、实例方法: // ->ChineseCharNew(Char) ChineseChar类的构造函数。 // ->CompareStrokeNumber(Char) 将给出的字符和实例字符的笔画数进行比较。 // ->HasSound(String) 识别字符是否有指定的读音。 // -> IsHomophone(Char) 识别给出的字符是否是实例字符的同音字。 //3、实例属性: // ->ChineseCharacter 获取这个汉字字符。 // ->IsPolyphone 获取这个字符是否是多音字。 // ->PinyinCount 获取这个字符的拼音个数。 // ->StrokeNumber 获取这个字符的笔画数
2. 简繁转换
知识点:Nuget 引用 ChineseConverter
示例:
Console.WriteLine("========== 示例:汉字简繁转换 =========="); Console.Write("采用简体输入一段话:"); txt = Console.ReadLine(); txt = ChineseConverter.Convert(txt, ChineseConversionDirection.SimplifiedToTraditional); Console.WriteLine("繁体是:" + txt); txt = ChineseConverter.Convert(txt, ChineseConversionDirection.TraditionalToSimplified); Console.WriteLine("转换回来简体是:" + txt);
3. 语音播放
知识点:引用 DotNetSpeech.dll
示例:
Console.WriteLine("========== 示例:汉字转语音 =========="); Console.Write("输入一段话:"); txt = Console.ReadLine(); var voice = new SpVoice(); voice.Speak(txt, SpeechVoiceSpeakFlags.SVSFPurgeBeforeSpeak);
4. 语音识别
知识点:目前大多数还是采用讯飞语音库
原文:https://www.cnblogs.com/yokeqi/p/11895649.html