ASP.NET获取汉字拼音的首字母
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 |
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。