public static string ConvertPY(string SourceString) { if (SourceString == null) return null; Encoding ed = Encoding.GetEncoding("GB2312"); if (ed == null) throw (new ArgumentException("没有找到编码集GB2312")); int bh = 0; char[] charary = SourceString.ToCharArray(); byte[] bAry = new byte[2]; StringBuilder rtnSb = new StringBuilder(); for (int i = 0; i < charary.Length; i++) { bAry = ed.GetBytes(charary[i].ToString()); if (bAry.Length == 1) { rtnSb.Append(charary[i]); continue; } bh = bAry[0] - 0xA0; if (0x10 <= bh && bh <= 0x57) //是gb2312汉字 { bool isFind = false; for (int j = 0; j < _Allhz.Length; j++) { if (_Allhz[j][1].IndexOf(charary[i]) != -1) { rtnSb.Append(_Allhz[j][0]); isFind = true; break; } } if (!isFind) rtnSb.Append(charary[i]); } else rtnSb.Append(charary[i]); } return rtnSb.ToString(); }
转载于:https://www.cnblogs.com/zt04985807/archive/2009/01/09/1372953.html
相关资源:C#汉字转拼音(npinyin)将中文转换成拼音全文或首字母