.NET 中文转缩写拼音
2015-07-08 14:47
106 查看
public class CNToSpell { /// 汉字转拼音缩写 /// Code By MuseStudio@hotmail.com /// 2004-11-30 /// 要转换的汉字字符串/// 拼音缩写 public static string GetString(string str) { string tempStr = ""; foreach (char c in str) { if ((int)c >= 33 && (int)c <= 126) { //字母和符号原样保留 tempStr += c.ToString(); } else { //累加拼音声母 tempStr += GetPYChar(c.ToString()); } } return tempStr; } /// Code By MuseStudio@hotmail.com /// 2004-11-30 /// 要转换的单个汉字/// 拼音声母 private static string GetPYChar(string c) { byte[] array = new byte[2]; array = System.Text.Encoding.Default.GetBytes(c); int i = (short)(array[0] - '\0') * 256 + ((short)(array[1] - '\0')); if (i < 0xB0A1) return "*"; if (i < 0xB0C5) return "a"; if (i < 0xB2C1) return "b"; if (i < 0xB4EE) return "c"; if (i < 0xB6EA) return "d"; if (i < 0xB7A2) return "e"; if (i < 0xB8C1) return "f"; if (i < 0xB9FE) return "g"; if (i < 0xBBF7) return "h"; if (i < 0xBFA6) return "g"; if (i < 0xC0AC) return "k"; if (i < 0xC2E8) return "l"; if (i < 0xC4C3) return "m"; if (i < 0xC5B6) return "n"; if (i < 0xC5BE) return "o"; if (i < 0xC6DA) return "p"; if (i < 0xC8BB) return "q"; if (i < 0xC8F6) return "r"; if (i < 0xCBFA) return "s"; if (i < 0xCDDA) return "t"; if (i < 0xCEF4) return "w"; if (i < 0xD1B9) return "x"; if (i < 0xD4D1) return "y"; if (i < 0xD7FA) return "z"; return "*"; } }
相关文章推荐
- linux下安装gsoap
- 静态变量static
- linux下安装nginx
- Android中Service(服务)详解
- AppDomain.CurrentDomain.BaseDirectory与Application.StartupPath的区别
- 软件开发过程学习笔记(四)之详细设计说明书模板
- Android 出现的小问题 an internal error occurred during:”check Android SDk“
- java类型转换
- 【转】asp.net mvc(模式)和三层架构(BLL、DAL、Model)的联系与区别
- 软件开发过程学习笔记(四)之详细设计说明书模板 分类: 开发过程 2015-07-08 14:46 12人阅读 评论(0) 收藏
- linux link script symbol export to C
- ]CUDA学习笔记2
- 散列表的详细剖析 (算法导论第11章)
- 在8X12平台添加或者移植一个完整的camera
- 软件开发过程学习笔记(三)之概要设计说明书模板
- C#与C/C++的交互
- C++实现二叉树之二叉链表
- 软件开发过程学习笔记(三)之概要设计说明书模板 分类: 开发过程 2015-07-08 14:45 14人阅读 评论(0) 收藏
- LeetCode "Number of Digit One"
- getchar()用法