`
leonardleonard
  • 浏览: 784549 次
社区版块
存档分类
最新评论

汉字转化成拼音的源代码

阅读更多
1using System;
  2using System.Collections;
  3using System.Text;
  4namespace JJBase.String
  5{
  6    /**//// <summary>
  7    /// JJBase 的摘要说明。
  8    /// </summary>
  9    ///
 10    汉字转化成拼音#region 汉字转化成拼音
 11   
 12    public class Chinese2Spell
 13    {
 14               
 15        /**//// <summary>
 16        /// 获得拼音
 17        /// </summary>
 18        /// <param name="str_Spell">汉字</param>
 19        /// <returns></returns>
 20        //调用格式:GetSpell(string str_Spell)
 21        //str_Spell是要转换的汉字
 22        //返回结果是转化成的拼音
 23        //目前还不完善,例如“爨”字转换不出来,需要进一步完善
 24        public string GetSpell(string str_Chinese)
 25        {
 26
 27            try
 28            {
 29                Hashtable t=hb();
 30
 31                byte[] b=System.Text.Encoding.Default.GetBytes(str_Chinese);
 32                int p;
 33                StringBuilder ret=new StringBuilder();
 34                for(int i=0;i< b.Length;i++)
 35                {
 36                    p=(int)b[i];
 37                    if(p>128)//160? or 128? 原文是160,待以后考证
 38                    {
 39                        p=p*256+b[++i]-65536;
 40                        ret.Append(g(t,p));
 41                    }
 42                    else
 43                    {
 44                        ret.Append((char)p);
 45                    }
 46                }
 47                t.Clear();
 48                return ret.ToString();
 49            }
 50            catch
 51            {
 52                return "";
 53            }
 54           
 55        }
 56       
 57        private string g(Hashtable ht,int num)
 58        {
 59            if(num < -20319||num > -10247)
 60                return "";
 61            while(!ht.ContainsKey(num))
 62                num--;
 63            return ht[num].ToString();
 64        }
 65        private Hashtable hb()
 66        {
 67            //尚不晚完善,例如“爨”就没有转换出来
 68            Hashtable ht=new Hashtable();
 69            ht.Add(-20319,"a");
 70            ht.Add(-20317,"ai");ht.Add(-20304,"an"); ht.Add(-20295,"ang");
 71            ht.Add(-20292,"ao");ht.Add(-20283,"ba"); ht.Add(-20265,"bai");
 72            ht.Add(-20257,"ban");ht.Add(-20242,"bang"); ht.Add(-20230,"bao");
 73            ht.Add(-20051,"bei"); ht.Add(-20036,"ben"); ht.Add(-20032,"beng");
 74            ht.Add(-20026,"bi"); ht.Add(-20002,"bian"); ht.Add(-19990,"biao");
 75            ht.Add(-19986,"bie"); ht.Add(-19982,"bin"); ht.Add(-19976,"bing");
 76            ht.Add(-19805,"bo"); ht.Add(-19784,"bu"); ht.Add(-19775,"ca");
 77            ht.Add(-19774,"cai"); ht.Add(-19763,"can"); ht.Add(-19756,"cang");
 78            ht.Add(-19751,"cao"); ht.Add(-19746,"ce"); ht.Add(-19741,"ceng");
 79            ht.Add(-19739,"cha"); ht.Add(-19728,"chai"); ht.Add(-19725,"chan");
 80            ht.Add(-19715,"chang"); ht.Add(-19540,"chao"); ht.Add(-19531,"che");
 81            ht.Add(-19525,"chen"); ht.Add(-19515,"cheng"); ht.Add(-19500,"chi");
 82            ht.Add(-19484,"chong"); ht.Add(-19479,"chou"); ht.Add(-19467,"chu");
 83            ht.Add(-19289,"chuai"); ht.Add(-19288,"chuan"); ht.Add(-19281,"chuang");
 84            ht.Add(-19275,"chui"); ht.Add(-19270,"chun"); ht.Add(-19263,"chuo");
 85            ht.Add(-19261,"ci"); ht.Add(-19249,"cong"); ht.Add(-19243,"cou");
 86            ht.Add(-19242,"cu"); ht.Add(-19238,"cuan"); ht.Add(-19235,"cui");
 87            ht.Add(-19227,"cun"); ht.Add(-19224,"cuo"); ht.Add(-19218,"da");
 88            ht.Add(-19212,"dai"); ht.Add(-19038,"dan"); ht.Add(-19023,"dang");
 89            ht.Add(-19018,"dao"); ht.Add(-19006,"de"); ht.Add(-19003,"deng");
 90            ht.Add(-18996,"di"); ht.Add(-18977,"dian"); ht.Add(-18961,"diao");
 91            ht.Add(-18952,"die"); ht.Add(-18783,"ding"); ht.Add(-18774,"diu");
 92            ht.Add(-18773,"dong"); ht.Add(-18763,"dou"); ht.Add(-18756,"du");
 93            ht.Add(-18741,"duan"); ht.Add(-18735,"dui"); ht.Add(-18731,"dun");
 94            ht.Add(-18722,"duo"); ht.Add(-18710,"e"); ht.Add(-18697,"en");
 95            ht.Add(-18696,"er"); ht.Add(-18526,"fa"); ht.Add(-18518,"fan");
 96            ht.Add(-18501,"fang"); ht.Add(-18490,"fei"); ht.Add(-18478,"fen");
 97            ht.Add(-18463,"feng"); ht.Add(-18448,"fo"); ht.Add(-18447,"fou");
 98            ht.Add(-18446,"fu"); ht.Add(-18239,"ga"); ht.Add(-18237,"gai");
 99            ht.Add(-18231,"gan"); ht.Add(-18220,"gang"); ht.Add(-18211,"gao");
100            ht.Add(-18201,"ge"); ht.Add(-18184,"gei"); ht.Add(-18183,"gen");
101            ht.Add(-18181,"geng"); ht.Add(-18012,"gong"); ht.Add(-17997,"gou");
102            ht.Add(-17988,"gu"); ht.Add(-17970,"gua"); ht.Add(-17964,"guai");
103            ht.Add(-17961,"guan"); ht.Add(-17950,"guang"); ht.Add(-17947,"gui");
104            ht.Add(-17931,"gun"); ht.Add(-17928,"guo"); ht.Add(-17922,"ha");
105            ht.Add(-17759,"hai"); ht.Add(-17752,"han"); ht.Add(-17733,"hang");
106            ht.Add(-17730,"hao"); ht.Add(-17721,"he"); ht.Add(-17703,"hei");
107            ht.Add(-17701,"hen"); ht.Add(-17697,"heng"); ht.Add(-17692,"hong");
108            ht.Add(-17683,"hou"); ht.Add(-17676,"hu"); ht.Add(-17496,"hua");
109            ht.Add(-17487,"huai"); ht.Add(-17482,"huan"); ht.Add(-17468,"huang");
110            ht.Add(-17454,"hui"); ht.Add(-17433,"hun"); ht.Add(-17427,"huo");
111            ht.Add(-17417,"ji"); ht.Add(-17202,"jia"); ht.Add(-17185,"jian");
112            ht.Add(-16983,"jiang"); ht.Add(-16970,"jiao"); ht.Add(-16942,"jie");
113            ht.Add(-16915,"jin"); ht.Add(-16733,"jing"); ht.Add(-16708,"jiong");
114            ht.Add(-16706,"jiu"); ht.Add(-16689,"ju"); ht.Add(-16664,"juan");
115            ht.Add(-16657,"jue"); ht.Add(-16647,"jun"); ht.Add(-16474,"ka");
116            ht.Add(-16470,"kai"); ht.Add(-16465,"kan"); ht.Add(-16459,"kang");
117            ht.Add(-16452,"kao"); ht.Add(-16448,"ke"); ht.Add(-16433,"ken");
118            ht.Add(-16429,"keng"); ht.Add(-16427,"kong"); ht.Add(-16423,"kou");
119            ht.Add(-16419,"ku"); ht.Add(-16412,"kua"); ht.Add(-16407,"kuai");
120            ht.Add(-16403,"kuan"); ht.Add(-16401,"kuang"); ht.Add(-16393,"kui");
121            ht.Add(-16220,"kun"); ht.Add(-16216,"kuo"); ht.Add(-16212,"la");
122            ht.Add(-16205,"lai"); ht.Add(-16202,"lan"); ht.Add(-16187,"lang");
123            ht.Add(-16180,"lao"); ht.Add(-16171,"le"); ht.Add(-16169,"lei");
124            ht.Add(-16158,"leng"); ht.Add(-16155,"li"); ht.Add(-15959,"lia");
125            ht.Add(-15958,"lian"); ht.Add(-15944,"liang"); ht.Add(-15933,"liao");
126            ht.Add(-15920,"lie"); ht.Add(-15915,"lin"); ht.Add(-15903,"ling");
127            ht.Add(-15889,"liu"); ht.Add(-15878,"long"); ht.Add(-15707,"lou");
128            ht.Add(-15701,"lu");ht.Add(-15681,"lv");ht.Add(-15667,"luan");
129            ht.Add(-15661,"lue");ht.Add(-15659,"lun");ht.Add(-15652,"luo");
130            ht.Add(-15640,"ma");ht.Add(-15631,"mai");ht.Add(-15625,"man");
131            ht.Add(-15454,"mang");ht.Add(-15448,"mao");ht.Add(-15436,"me");
132            ht.Add(-15435,"mei");ht.Add(-15419,"men");ht.Add(-15416,"meng");
133            ht.Add(-15408,"mi");ht.Add(-15394,"mian");ht.Add(-15385,"miao");
134            ht.Add(-15377,"mie");ht.Add(-15375,"min");ht.Add(-15369,"ming");
135            ht.Add(-15363,"miu");ht.Add(-15362,"mo");ht.Add(-15183,"mou");
136            ht.Add(-15180,"mu");ht.Add(-15165,"na");ht.Add(-15158,"nai");
137            ht.Add(-15153,"nan");ht.Add(-15150,"nang");ht.Add(-15149,"nao");
138            ht.Add(-15144,"ne");ht.Add(-15143,"nei");ht.Add(-15141,"nen");
139            ht.Add(-15140,"neng");ht.Add(-15139,"ni");ht.Add(-15128,"nian");
140            ht.Add(-15121,"niang");ht.Add(-15119,"niao");ht.Add(-15117,"nie");
141            ht.Add(-15110,"nin");ht.Add(-15109,"ning");ht.Add(-14941,"niu");
142            ht.Add(-14937,"nong");ht.Add(-14933,"nu");ht.Add(-14930,"nv");
143            ht.Add(-14929,"nuan");ht.Add(-14928,"nue");ht.Add(-14926,"nuo");
144            ht.Add(-14922,"o");ht.Add(-14921,"ou");ht.Add(-14914,"pa");
145            ht.Add(-14908,"pai");ht.Add(-14902,"pan");ht.Add(-14894,"pang");
146            ht.Add(-14889,"pao");ht.Add(-14882,"pei");ht.Add(-14873,"pen");
147            ht.Add(-14871,"peng");ht.Add(-14857,"pi");ht.Add(-14678,"pian");
148            ht.Add(-14674,"piao");ht.Add(-14670,"pie");ht.Add(-14668,"pin");
149            ht.Add(-14663,"ping");ht.Add(-14654,"po");ht.Add(-14645,"pu");
150            ht.Add(-14630,"qi");ht.Add(-14594,"qia");ht.Add(-14429,"qian");
151            ht.Add(-14407,"qiang");ht.Add(-14399,"qiao");ht.Add(-14384,"qie");
152            ht.Add(-14379,"qin");ht.Add(-14368,"qing");ht.Add(-14355,"qiong");
153            ht.Add(-14353,"qiu");ht.Add(-14345,"qu");ht.Add(-14170,"quan");
154            ht.Add(-14159,"que");ht.Add(-14151,"qun");ht.Add(-14149,"ran");
155            ht.Add(-14145,"rang");ht.Add(-14140,"rao");ht.Add(-14137,"re");
156            ht.Add(-14135,"ren");ht.Add(-14125,"reng");ht.Add(-14123,"ri");
157            ht.Add(-14122,"rong");ht.Add(-14112,"rou");ht.Add(-14109,"ru");
158            ht.Add(-14099,"ruan");ht.Add(-14097,"rui");ht.Add(-14094,"run");
159            ht.Add(-14092,"ruo");ht.Add(-14090,"sa");ht.Add(-14087,"sai");
160            ht.Add(-14083,"san");ht.Add(-13917,"sang");ht.Add(-13914,"sao");
161            ht.Add(-13910,"se");ht.Add(-13907,"sen");ht.Add(-13906,"seng");
162            ht.Add(-13905,"sha");ht.Add(-13896,"shai");ht.Add(-13894,"shan");
163            ht.Add(-13878,"shang");ht.Add(-13870,"shao");ht.Add(-13859,"she");
164            ht.Add(-13847,"shen");ht.Add(-13831,"sheng");ht.Add(-13658,"shi");
165            ht.Add(-13611,"shou");ht.Add(-13601,"shu");ht.Add(-13406,"shua");
166            ht.Add(-13404,"shuai");ht.Add(-13400,"shuan");ht.Add(-13398,"shuang");
167            ht.Add(-13395,"shui");ht.Add(-13391,"shun");ht.Add(-13387,"shuo");
168            ht.Add(-13383,"si");ht.Add(-13367,"song");ht.Add(-13359,"sou");
169            ht.Add(-13356,"su");ht.Add(-13343,"suan");ht.Add(-13340,"sui");
170            ht.Add(-13329,"sun");ht.Add(-13326,"suo");ht.Add(-13318,"ta");
171            ht.Add(-13147,"tai");ht.Add(-13138,"tan");ht.Add(-13120,"tang");
172            ht.Add(-13107,"tao");ht.Add(-13096,"te");ht.Add(-13095,"teng");
173            ht.Add(-13091,"ti");ht.Add(-13076,"tian");ht.Add(-13068,"tiao");
174            ht.Add(-13063,"tie");ht.Add(-13060,"ting");ht.Add(-12888,"tong");
175            ht.Add(-12875,"tou");ht.Add(-12871,"tu");ht.Add(-12860,"tuan");
176            ht.Add(-12858,"tui");ht.Add(-12852,"tun");ht.Add(-12849,"tuo");
177            ht.Add(-12838,"wa");ht.Add(-12831,"wai");ht.Add(-12829,"wan");
178            ht.Add(-12812,"wang");ht.Add(-12802,"wei");ht.Add(-12607,"wen");
179            ht.Add(-12597,"weng");ht.Add(-12594,"wo");ht.Add(-12585,"wu");
180            ht.Add(-12556,"xi");ht.Add(-12359,"xia");ht.Add(-12346,"xian");
181            ht.Add(-12320,"xiang");ht.Add(-12300,"xiao");ht.Add(-12120,"xie");
182            ht.Add(-12099,"xin");ht.Add(-12089,"xing");ht.Add(-12074,"xiong");
183            ht.Add(-12067,"xiu");ht.Add(-12058,"xu");ht.Add(-12039,"xuan");
184            ht.Add(-11867,"xue");ht.Add(-11861,"xun");ht.Add(-11847,"ya");
185            ht.Add(-11831,"yan");ht.Add(-11798,"yang");ht.Add(-11781,"yao");
186            ht.Add(-11604,"ye");ht.Add(-11589,"yi");ht.Add(-11536,"yin");
187            ht.Add(-11358,"ying");ht.Add(-11340,"yo");ht.Add(-11339,"yong");
188            ht.Add(-11324,"you");ht.Add(-11303,"yu");ht.Add(-11097,"yuan");
189            ht.Add(-11077,"yue");ht.Add(-11067,"yun");ht.Add(-11055,"za");
190            ht.Add(-11052,"zai");ht.Add(-11045,"zan");ht.Add(-11041,"zang");
191            ht.Add(-11038,"zao");ht.Add(-11024,"ze");ht.Add(-11020,"zei");
192            ht.Add(-11019,"zen");ht.Add(-11018,"zeng");ht.Add(-11014,"zha");
193            ht.Add(-10838,"zhai");ht.Add(-10832,"zhan");ht.Add(-10815,"zhang");
194            ht.Add(-10800,"zhao");ht.Add(-10790,"zhe");ht.Add(-10780,"zhen");
195            ht.Add(-10764,"zheng");ht.Add(-10587,"zhi");ht.Add(-10544,"zhong");
196            ht.Add(-10533,"zhou");ht.Add(-10519,"zhu");ht.Add(-10331,"zhua");
197            ht.Add(-10329,"zhuai");ht.Add(-10328,"zhuan");ht.Add(-10322,"zhuang");
198            ht.Add(-10315,"zhui");ht.Add(-10309,"zhun");ht.Add(-10307,"zhuo");
199            ht.Add(-10296,"zi");ht.Add(-10281,"zong");ht.Add(-10274,"zou");
200            ht.Add(-10270,"zu");ht.Add(-10262,"zuan");ht.Add(-10260,"zui");
201            ht.Add(-10256,"zun");ht.Add(-10254,"zuo");ht.Add(-10247,"zz");
202            return ht;
203        }
204   
205    }
206    # endregion
207} 
分享到:
评论

相关推荐

    中文汉字转化成拼音js代码.zip

    同时,"中文汉字转化成拼音js代码"文件很可能是实现该功能的源代码,可以深入研究其内部逻辑和实现细节。 总的来说,这个JS代码实现了汉字与拼音之间的双向转换,为开发者提供了一种便捷的工具,能够增强网页与用户...

    C#编写汉字转拼音软件源代码.zip

    本项目以"C#编写汉字转拼音软件源代码.zip"为主题,旨在介绍如何利用C#来实现一个汉字转拼音的软件,这对于处理中文文本、语音合成或搜索引擎优化等场景具有重要意义。 首先,我们要理解汉字转拼音的基本原理。在...

    C#中文转换拼音源代码

    本资源“C#中文转换拼音源代码”提供了一个实用的解决方案,帮助开发者将中文字符串转化为对应的拼音表示。 首先,我们需要了解汉字与拼音之间的关系。汉字是由数千个不同的字符组成,每个字符代表一个词或词的一...

    汉字自动生成拼音源代码

    本项目提供的源代码实现了一个小程序,能够接收汉字输入并转换为对应的拼音。以下是对这个知识点的详细解释: 1. **汉字与拼音的对应关系** 汉字是中文的书写形式,每个汉字都有其对应的拼音,拼音由声母、韵母和...

    ry实现汉字转换成拼音代码.rar_fortyhhy_molecularc1b_ry实现汉字转换成拼音代码

    在IT行业中,汉字转换成拼音是一项常见的需求,特别是在文本处理、搜索引擎优化(SEO)和语音合成等领域。"ry实现汉字转换成拼音代码"是针对这一需求开发的一个插件,它能够将汉字转换为对应的拼音表示,方便计算机...

    汉字转拼音 源代码

    源代码是实现这些功能的基础,通过理解并掌握这些源代码,开发者可以构建自己的汉字转拼音工具。这里我们将深入探讨“汉字转拼音”的原理与实现,以及C#语言在这一过程中的应用。 汉字转拼音,顾名思义,是指将汉字...

    汉字转拼音源代码下载

    标题“汉字转拼音源代码下载”提示我们,这个资源包含用于将汉字转换为拼音的编程代码。ASP源代码通常由一系列ASP文件组成,这些文件包含了处理特定任务的脚本和指令。在这个案例中,我们有两个关键文件:`index.asp...

    一个汉字转拼音的源代码

    本资源提供了一个能够将汉字字符串转换为拼音字符串的源代码,这对于我们理解和处理中文字符具有重要意义。 首先,我们要了解汉字转拼音的基本原理。在计算机中,汉字通常以Unicode编码表示,而拼音则是通过ASCII码...

    PHP汉字转拼音源代码

    "PHP汉字转拼音源代码"就是这样一个工具,它允许开发者通过调用特定的函数,将输入的汉字字符串转换成对应的拼音表示。 首先,我们要理解汉字转拼音的基本原理。这个过程通常涉及到汉字到拼音的映射,这需要一个...

    汉字转化成拼音首字母代码delphi xe

    在给定的标题“汉字转化成拼音首字母代码Delphi XE”中,我们可以推断这是一个关于如何在Delphi XE版本下实现汉字到拼音首字母转换的代码示例。描述中提到的“汉字转化成拼音首字母函数”是这个程序的核心功能,它...

    C语言版拼音输入法源代码

    "拼音"是指中文的拼音系统,是将汉字转化为拉丁字母表示的方式,是中文输入法的基础。"源代码"意味着提供的是程序的原始指令集,可以被开发者查看、学习和修改,而非已编译的可执行文件。 根据压缩包中的文件名,...

    自由拼音的C++源代码

    本资源包含的是自由拼音的C++源代码,对于想要深入理解输入法编程的开发者来说,这是一个宝贵的学习材料。C++作为一种强大的编程语言,其在系统级编程和效率优化方面具有显著优势,因此被用于构建复杂且高效的输入法...

    汉字转换为拼音的C++程序代码.rar

    描述中的内容重复了标题,强调了这个压缩包包含的是一个能够进行汉字到拼音转换的C++源代码。这意味着开发者或学习者可以通过阅读和运行这些代码来理解和实现汉字转拼音的功能。 标签“汉字转换为拼音的C++程序代码...

    汉字转拼音C++源代码

    C++源代码实现汉字转拼音功能,一般会用到以下几个关键知识点: 1. **字符编码**:理解Unicode、GBK等编码方式,因为这些编码方式用于表示汉字。在C++中,需要正确处理这些编码,才能正确读取和转换汉字。 2. **...

    vc 汉字转拼音源代码.rar

    这份名为"vc 汉字转拼音源代码.rar"的压缩包包含了一个程序,可以将输入的汉字文本转化为对应的拼音表示,这对于中文信息处理、语音合成、搜索引擎优化等场景具有重要意义。 首先,我们需要理解汉字转拼音的基本...

    自由拼音输入法源代码 原装版

    【自由拼音输入法源代码 原装版】是一份专为输入法开发爱好者和初学者准备的宝贵资源。这份源代码提供了实现拼音输入法的基础框架,帮助开发者深入理解输入法的工作原理,以及如何通过编程语言来实现这一功能。源...

    汉字转拼音asp源代码

    【标题】"汉字转拼音asp源代码"涉及的是在ASP(Active Server Pages)环境中实现将汉字转换为拼音的功能。在Web开发中,这样的功能可能用于搜索引擎优化(SEO),便于非汉字用户理解和输入网址,或者在某些自动化...

    中文汉字转换拼音工具源代码

    标题中的“中文汉字转换拼音工具源代码”表明这是一个关于编程的项目,具体是实现中文汉字转化为带有声调的拼音的功能。这个工具对于处理中文字符,尤其是进行语音合成、搜索引擎优化或者自动化处理中文文本的场景...

    汉字拼音第一个字母,转拼音,源代码

    总的来说,汉字拼音转换是中文编程中的基础能力之一,通过合理利用现有库和编写源代码,我们可以方便地进行汉字与拼音间的转化,从而满足各种应用场景的需求。在处理压缩包中的`Transfer`文件时,你可以期待找到这样...

    汉字转拼音C程序源代码3

    汉字转拼音C程序源代码3,在汉字转拼音C程序源代码的上做了修改,可以处理混有ASCII字符的汉字串,其中的ASCII字符原样输出: 如:混有ASCII字符的汉字串to拼音 混有ASCII 123.456 字符的汉字串to拼音 Hun_You_ASCII ...

Global site tag (gtag.js) - Google Analytics