用C#写的汉语转拼音缩写的例子
以前用C#写的一个汉语转拼音所写的例子,拿出来与大家共享下,呵呵,有什么好的改进,希望大家共同探讨:原文链接
1
using System;
2
using System.Data;
3
using System.Configuration;
4
using System.Collections;
5
using System.Web;
6
using System.Web.Security;
7
using System.Web.UI;
8
using System.Web.UI.WebControls;
9
using System.Web.UI.WebControls.WebParts;
10
using System.Web.UI.HtmlControls;
11![](/Images/OutliningIndicators/None.gif)
12
public partial class 汉字转拼音函数_Default : System.Web.UI.Page
13
{
14
protected void Page_Load(object sender, EventArgs e)
15
{
16
this.lbl_Show.Text = GetPYString("郑玉路");
17
}
18![](/Images/OutliningIndicators/InBlock.gif)
19
/// <summary>
20
/// 汉字转拼音缩写
21
/// Code By MuseStudio@hotmail.com
22
/// 2004-11-30
23
/// </summary>
24
/// <param name="str">要转换的汉字字符串</param>
25
/// <returns>拼音缩写</returns>
26
public string GetPYString(string str)
27
{
28
string tempStr = "";
29
foreach (char c in str)
30
{
31
if ((int)c >= 33 && (int)c <= 126)
32
{//字母和符号原样保留
33
tempStr += c.ToString();
34
}
35
else
36
{//累加拼音声母
37
tempStr += GetPYChar(c.ToString());
38
}
39
}
40
return tempStr;
41
}
42![](/Images/OutliningIndicators/InBlock.gif)
43
/// <summary>
44
/// 取单个字符的拼音声母
45
/// Code By MuseStudio@hotmail.com
46
/// 2004-11-30
47
/// </summary>
48
/// <param name="c">要转换的单个汉字</param>
49
/// <returns>拼音声母</returns>
50
public string GetPYChar(string c)
51
{
52
byte[] array = new byte[2];
53
array = System.Text.Encoding.Default.GetBytes(c);
54
int i = (short)(array[0] - '\0') * 256 + ((short)(array[1] - '\0'));
55![](/Images/OutliningIndicators/InBlock.gif)
56
if (i < 0xB0A1) return "*";
57
if (i < 0xB0C5) return "a";
58
if (i < 0xB2C1) return "b";
59
if (i < 0xB4EE) return "c";
60
if (i < 0xB6EA) return "d";
61
if (i < 0xB7A2) return "e";
62
if (i < 0xB8C1) return "f";
63
if (i < 0xB9FE) return "g";
64
if (i < 0xBBF7) return "h";
65
if (i < 0xBFA6) return "g";
66
if (i < 0xC0AC) return "k";
67
if (i < 0xC2E8) return "l";
68
if (i < 0xC4C3) return "m";
69
if (i < 0xC5B6) return "n";
70
if (i < 0xC5BE) return "o";
71
if (i < 0xC6DA) return "p";
72
if (i < 0xC8BB) return "q";
73
if (i < 0xC8F6) return "r";
74
if (i < 0xCBFA) return "s";
75
if (i < 0xCDDA) return "t";
76
if (i < 0xCEF4) return "w";
77
if (i < 0xD1B9) return "x";
78
if (i < 0xD4D1) return "y";
79
if (i < 0xD7FA) return "z";
80![](/Images/OutliningIndicators/InBlock.gif)
81
return "*";
82
}
83![](/Images/OutliningIndicators/InBlock.gif)
84
}
85![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
2
![](/Images/OutliningIndicators/None.gif)
3
![](/Images/OutliningIndicators/None.gif)
4
![](/Images/OutliningIndicators/None.gif)
5
![](/Images/OutliningIndicators/None.gif)
6
![](/Images/OutliningIndicators/None.gif)
7
![](/Images/OutliningIndicators/None.gif)
8
![](/Images/OutliningIndicators/None.gif)
9
![](/Images/OutliningIndicators/None.gif)
10
![](/Images/OutliningIndicators/None.gif)
11
![](/Images/OutliningIndicators/None.gif)
12
![](/Images/OutliningIndicators/None.gif)
13
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
14
![](/Images/OutliningIndicators/InBlock.gif)
15
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
16
![](/Images/OutliningIndicators/InBlock.gif)
17
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
18
![](/Images/OutliningIndicators/InBlock.gif)
19
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
20
![](/Images/OutliningIndicators/InBlock.gif)
21
![](/Images/OutliningIndicators/InBlock.gif)
22
![](/Images/OutliningIndicators/InBlock.gif)
23
![](/Images/OutliningIndicators/InBlock.gif)
24
![](/Images/OutliningIndicators/InBlock.gif)
25
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
26
![](/Images/OutliningIndicators/InBlock.gif)
27
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
28
![](/Images/OutliningIndicators/InBlock.gif)
29
![](/Images/OutliningIndicators/InBlock.gif)
30
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
31
![](/Images/OutliningIndicators/InBlock.gif)
32
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
33
![](/Images/OutliningIndicators/InBlock.gif)
34
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
35
![](/Images/OutliningIndicators/InBlock.gif)
36
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
37
![](/Images/OutliningIndicators/InBlock.gif)
38
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
39
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
40
![](/Images/OutliningIndicators/InBlock.gif)
41
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
42
![](/Images/OutliningIndicators/InBlock.gif)
43
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
44
![](/Images/OutliningIndicators/InBlock.gif)
45
![](/Images/OutliningIndicators/InBlock.gif)
46
![](/Images/OutliningIndicators/InBlock.gif)
47
![](/Images/OutliningIndicators/InBlock.gif)
48
![](/Images/OutliningIndicators/InBlock.gif)
49
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
50
![](/Images/OutliningIndicators/InBlock.gif)
51
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
52
![](/Images/OutliningIndicators/InBlock.gif)
53
![](/Images/OutliningIndicators/InBlock.gif)
54
![](/Images/OutliningIndicators/InBlock.gif)
55
![](/Images/OutliningIndicators/InBlock.gif)
56
![](/Images/OutliningIndicators/InBlock.gif)
57
![](/Images/OutliningIndicators/InBlock.gif)
58
![](/Images/OutliningIndicators/InBlock.gif)
59
![](/Images/OutliningIndicators/InBlock.gif)
60
![](/Images/OutliningIndicators/InBlock.gif)
61
![](/Images/OutliningIndicators/InBlock.gif)
62
![](/Images/OutliningIndicators/InBlock.gif)
63
![](/Images/OutliningIndicators/InBlock.gif)
64
![](/Images/OutliningIndicators/InBlock.gif)
65
![](/Images/OutliningIndicators/InBlock.gif)
66
![](/Images/OutliningIndicators/InBlock.gif)
67
![](/Images/OutliningIndicators/InBlock.gif)
68
![](/Images/OutliningIndicators/InBlock.gif)
69
![](/Images/OutliningIndicators/InBlock.gif)
70
![](/Images/OutliningIndicators/InBlock.gif)
71
![](/Images/OutliningIndicators/InBlock.gif)
72
![](/Images/OutliningIndicators/InBlock.gif)
73
![](/Images/OutliningIndicators/InBlock.gif)
74
![](/Images/OutliningIndicators/InBlock.gif)
75
![](/Images/OutliningIndicators/InBlock.gif)
76
![](/Images/OutliningIndicators/InBlock.gif)
77
![](/Images/OutliningIndicators/InBlock.gif)
78
![](/Images/OutliningIndicators/InBlock.gif)
79
![](/Images/OutliningIndicators/InBlock.gif)
80
![](/Images/OutliningIndicators/InBlock.gif)
81
![](/Images/OutliningIndicators/InBlock.gif)
82
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
83
![](/Images/OutliningIndicators/InBlock.gif)
84
![](/Images/OutliningIndicators/ExpandedBlockEnd.gif)
85
![](/Images/OutliningIndicators/None.gif)