public static string ConvertPinyin(char c, string isFormat) { CultureInfo cultureInfo = System.Threading.Thread.CurrentThread.CurrentCulture; TextInfo text = cultureInfo.TextInfo; Pinyin4net.Format.HanyuPinyinOutputFormat format = new Pinyin4net.Format.HanyuPinyinOutputFormat(); format.CaseType = Pinyin4net.Format.HanyuPinyinCaseType.LOWERCASE; format.ToneType = Pinyin4net.Format.HanyuPinyinToneType.WITHOUT_TONE; format.VCharType = Pinyin4net.Format.HanyuPinyinVCharType.WITH_U_UNICODE; var py = PinyinHelper.ToHanyuPinyinStringArray(c, format); if (py == null) { return(string.Empty); } if (isFormat == "big") { return(text.ToTitleCase(py.FirstOrDefault())); } else { return(py.FirstOrDefault()); } }
public static string PinYin(string str) { var arr = str.ToArray(); var _str = ""; var format = new Pinyin4net.Format.HanyuPinyinOutputFormat(); format.CaseType = Pinyin4net.Format.HanyuPinyinCaseType.LOWERCASE; format.ToneType = Pinyin4net.Format.HanyuPinyinToneType.WITHOUT_TONE; arr.ToList() .ForEach(t => { var _arr = Pinyin4net.PinyinHelper.ToHanyuPinyinStringArray(t, format); if (_arr != null) { _arr .ToList() .ForEach(u => { _str += u; }); } }); return _str; }