Code
 1 internal sealed class program
 2    {
 3        public static void Main() {
 4            Console.WriteLine(ChineseToPYAbbreviation("你好,我就要拼音首字母").ToUpper());//NH*WJYPYSZM
 5            Console.ReadLine();
 6        }
 7        public static string ChineseToPYAbbreviation(string str)
 8        {
 9            string tempStr = "";
10            foreach (char c in str)
11            {
12                if ((int)c >= 33 && (int)c <= 126)
13                {//字母和符号原样保留
14
15                    tempStr += c.ToString();
16                }
17                else
18                {//累加拼音声母
19                    tempStr += GetPYChar(c.ToString());
20                }
21            }
22            return tempStr;
23        }
24        /**//**//**//// 
25        /// 取单个字符的拼音声母
26        /// 
27        /// 要转换的单个汉字
28        /// 拼音声母
29        private static string GetPYChar(string c)
30        {
31            byte[] array = new byte[2];
32            array = System.Text.Encoding.Default.GetBytes(c);
33            int i = (short)(array[0] - '\0') * 256 + ((short)(array[1] - '\0'));
34
35            if (i < 0xB0A1) return "*";
36            if (i < 0xB0C5) return "a";
37            if (i < 0xB2C1) return "b";
38            if (i < 0xB4EE) return "c";
39            if (i < 0xB6EA) return "d";
40            if (i < 0xB7A2) return "e";
41            if (i < 0xB8C1) return "f";
42            if (i < 0xB9FE) return "g";
43            if (i < 0xBBF7) return "h";
44            if (i < 0xBFA6) return "j";
45            if (i < 0xC0AC) return "k";
46            if (i < 0xC2E8) return "l";
47            if (i < 0xC4C3) return "m";
48            if (i < 0xC5B6) return "n";
49            if (i < 0xC5BE) return "o";
50            if (i < 0xC6DA) return "p";
51            if (i < 0xC8BB) return "q";
52            if (i < 0xC8F6) return "r";
53            if (i < 0xCBFA) return "s";
54            if (i < 0xCDDA) return "t";
55            if (i < 0xCEF4) return "w";
56            if (i < 0xD1B9) return "x";
57            if (i < 0xD4D1) return "y";
58            if (i < 0xD7FA) return "z";
59            return "*";
60        }
61    } 
62

转载于:https://www.cnblogs.com/hl0071/articles/1383167.html

小功能 获取一段汉字的拼音首字母相关推荐

  1. Java中获取GBK编码汉字的拼音首字母(包括生僻字)

    Java中获取GBK编码汉字的拼音首字母(包括生僻字) 前言 代码 结果 前言 网上关于Java中获取汉字的拼音首字母的方法很多,但大多基于GB2312的汉字所属编码位置判断方法,现有一种基于GBK编 ...

  2. C# 获取汉字的拼音首字母(转)

    原文:https://blog.csdn.net/younghaiqing/article/details/62417269 一种是把所有中文字符集合起来组成一个对照表:另一种是依照汉字在Unicod ...

  3. C# 获取汉字的拼音首字母和全拼(含源码)

    C# 获取汉字的拼音首字母 一种是把所有中文字符集合起来组成一个对照表:另一种是依照汉字在Unicode编码表中的排序来确定拼音的首字母.碰到多音字时就以常用的为准(第一种方法中可以自行更改,方法为手 ...

  4. (转)C# 获取汉字的拼音首字母和全拼(含源码)[A]

    https://blog.csdn.net/younghaiqing/article/details/62417269 C# 获取汉字的拼音首字母 一种是把所有中文字符集合起来组成一个对照表:另一种是 ...

  5. delphi读音_delphi中获取汉字的拼音首字母

    这段代码处理范围比较广,对于双单字,较偏的字也都能处理,是目前比较流行且全面的在delphi中获取汉字的拼音首字母的代码. 1.以下代码段直接复制在代码里即可. {$R *.dfm} py: arra ...

  6. java怎样获取汉字的首字母_[JAVA]获得汉字的拼音首字母

    --sunfruit 提供了获得汉字的拼音首字母的方法 JDK版本    无版本限制 功能    实现了获得一个汉字的拼音首字母功能,为汉字排序提供了方便 欢迎大家提意见,交流 代码如下: /** * ...

  7. 从gb2py.idx中获取一个汉字的拼音首字母

    function GetPinyinFromFile(aHanzi:string):AnsiChar; //从gb2py.idx中获取一个汉字的拼音首字母 var sfile:TMemoryStrea ...

  8. java汉字转换拼音,获取汉字串拼音首字母

    首先要下载  pinyin4j  的jar包 import net.sourceforge.pinyin4j.PinyinHelper; import net.sourceforge.pinyin4j ...

  9. java汉字的拼音首字母_Java 获取汉字的拼音首字母

    Java 获取汉字的拼音首字母: pom.xml 引用 pinyin4j 包: com.belerweb pinyin4j 2.5.0 PinyinUtil 类: package com.xxx.co ...

最新文章

  1. C# json解析字符串总是多出双引号_在JavaScript应用中将CSV转换为JSON
  2. 六个月学php,修学六个月心得体会
  3. 【学习笔记】高等数据基础
  4. 博士出身好科研产出高,学术谱系真的可以决定一切吗?
  5. [C++]variadic function template expansion 变元函数参数的展开规则
  6. CYQ.Data 轻量数据层之路 V3.0版本发布-Xml绝对杀手(三十二)
  7. android apk编译工具,编译apk文件需要使用哪些软件?安卓apk反编译教程
  8. 高性能实现WORD转PDF(jacob1.19+SaveAsPDFandXPS)内附资源链接
  9. 5分钟学会双拼 双拼输入法 最简单的双拼入门教学 图文教程
  10. Ubuntu 11.10文本文档乱码
  11. JavaScript创建对象的方式
  12. org.git.mm.mysql_异常:java.lang.ClassNotFoundException: org.gjt.mm.mysql.Driver
  13. 搭配emuc-b202 can卡通讯时,时断时续
  14. 排列组合(Java随笔)—全排列
  15. 控制系统仿真与CAD-薛定宇-第四章matlab学习笔记
  16. 在LINUX如何用键盘复制,粘贴
  17. 一个有趣的游戏fizzbuzz
  18. matlab 28m35,F28M35H52C1学习笔记3
  19. uboot中usb storage启动方法1
  20. 营造好的气氛有助于拍出好的婚纱照

热门文章

  1. 这 30 个常用的 Maven 命令你必须熟悉!
  2. 支持本地 持久化的 单机版 consul 服务
  3. com.rr.domain.Department_$$_javassist_5 cannot be cast to javassist.util.proxy.Proxy
  4. 10.MYSQL:什么是事务?事务的性质?事务的应用?
  5. 怎样用springboot开发cs_springboot开发之配置自定义的错误界面和错误信息
  6. 数据中心“泡澡”散热,阿里云启用全球最大液冷数据中心支撑双11
  7. 笔试真题及其答案解析:国内各大银行计算机方向笔试之计算机基础知识—选择题120题
  8. HighNewTech:2019.08.09程序猿界大事件之【你好,我是鸿蒙OS】~【来了,老弟】—技术才是硬道理,开源方能建立新生态!
  9. 成功解决AttributeError: 'list' object has no attribute 'shape'
  10. ML之FE:数据处理—特征工程之数据集划分成训练集、验证集、测试集三部分简介、代码实现、案例应用之详细攻略