|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48 |
代码#region GetChineseSpell获取汉字拼音的第一个字母 //获取汉字拼音的第一个字母 static
public string GetChineseSpell(string
strText) { int
len = strText.Length; string
myStr = ""; for
(int
i = 0; i < len; i++) { myStr += getSpell(strText.Substring(i, 1)); } return
myStr; } static
public string[] GetChineseSpell(string[] strText) { int
len = strText.Length; string[] myStr = null; for
(int
i = 0; i < len; i++) { myStr[i] = getSpell(strText[i]); } return
myStr; } static
public string getSpell(string
cnChar) { byte[] arrCN = Encoding.Default.GetBytes(cnChar); if
(arrCN.Length > 1) { int
area = (short)arrCN[0]; int
pos = (short)arrCN[1]; int
code = (area << 8) + pos; int[] areacode = { 45217, 45253, 45761, 46318, 46826, 47010, 47297, 47614, 48119, 48119, 49062, 49324, 49896, 50371, 50614, 50622, 50906, 51387, 51446, 52218, 52698, 52698, 52698, 52980, 53689, 54481 }; for
(int
i = 0; i < 26; i++) { int
max = 55290; if
(i != 25) max = areacode[i + 1]; if
(areacode[i] <= code && code < max) { return
Encoding.Default.GetString(new
byte[] { (byte)(65 + i) }); } } return
"*"; } else
return cnChar; } #endregion |
ASP.NET获取汉字拼音的首字母,布布扣,bubuko.com
原文:http://www.cnblogs.com/zhangtao/p/3581724.html