`
yyzhpq
  • 浏览: 310948 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

汉字转化为拼音的c#实现代码

阅读更多
using System;
using System.Collections;
using System.Text;

public class Chinese2Spell
{

    /**/
    /// <summary>
    /// 获得拼音
    /// </summary>
    /// <param name="str_Spell">汉字</param>
    /// <returns></returns>
    //调用格式:GetSpell(string str_Spell)
    //str_Spell是要转换的汉字
    //返回结果是转化成的拼音
    //目前还不完善,例如“爨”字转换不出来,需要进一步完善
    public string GetSpell(string str_Chinese)
    {

        try
        {
            Hashtable t = hb();

            byte[] b = System.Text.Encoding.Default.GetBytes(str_Chinese);
            int p;
            StringBuilder ret = new StringBuilder();
            for (int i = 0; i < b.Length; i++)
            {
                p = (int)b[i];
                if (p > 128)//160? or 128? 原文是160,待以后考证
                {
                    p = p * 256 + b[++i] - 65536;
                    ret.Append(g(t, p));
                }
                else
                {
                    ret.Append((char)p);
                }
            }
            t.Clear();
            return ret.ToString();
        }
        catch
        {
            return "";
        }

    }

    private string g(Hashtable ht, int num)
    {
        if (num < -20319 || num > -10247)
            return "";
        while (!ht.ContainsKey(num))
            num--;
        return ht[num].ToString();
    }
    private Hashtable hb()
    {
        //尚不晚完善,例如“爨”就没有转换出来
        Hashtable ht = new Hashtable();
        ht.Add(-20319, "a");
        ht.Add(-20317, "ai"); ht.Add(-20304, "an"); ht.Add(-20295, "ang");
        ht.Add(-20292, "ao"); ht.Add(-20283, "ba"); ht.Add(-20265, "bai");
        ht.Add(-20257, "ban"); ht.Add(-20242, "bang"); ht.Add(-20230, "bao");
        ht.Add(-20051, "bei"); ht.Add(-20036, "ben"); ht.Add(-20032, "beng");
        ht.Add(-20026, "bi"); ht.Add(-20002, "bian"); ht.Add(-19990, "biao");
        ht.Add(-19986, "bie"); ht.Add(-19982, "bin"); ht.Add(-19976, "bing");
        ht.Add(-19805, "bo"); ht.Add(-19784, "bu"); ht.Add(-19775, "ca");
        ht.Add(-19774, "cai"); ht.Add(-19763, "can"); ht.Add(-19756, "cang");
        ht.Add(-19751, "cao"); ht.Add(-19746, "ce"); ht.Add(-19741, "ceng");
        ht.Add(-19739, "cha"); ht.Add(-19728, "chai"); ht.Add(-19725, "chan");
        ht.Add(-19715, "chang"); ht.Add(-19540, "chao"); ht.Add(-19531, "che");
        ht.Add(-19525, "chen"); ht.Add(-19515, "cheng"); ht.Add(-19500, "chi");
        ht.Add(-19484, "chong"); ht.Add(-19479, "chou"); ht.Add(-19467, "chu");
        ht.Add(-19289, "chuai"); ht.Add(-19288, "chuan"); ht.Add(-19281, "chuang");
        ht.Add(-19275, "chui"); ht.Add(-19270, "chun"); ht.Add(-19263, "chuo");
        ht.Add(-19261, "ci"); ht.Add(-19249, "cong"); ht.Add(-19243, "cou");
        ht.Add(-19242, "cu"); ht.Add(-19238, "cuan"); ht.Add(-19235, "cui");
        ht.Add(-19227, "cun"); ht.Add(-19224, "cuo"); ht.Add(-19218, "da");
        ht.Add(-19212, "dai"); ht.Add(-19038, "dan"); ht.Add(-19023, "dang");
        ht.Add(-19018, "dao"); ht.Add(-19006, "de"); ht.Add(-19003, "deng");
        ht.Add(-18996, "di"); ht.Add(-18977, "dian"); ht.Add(-18961, "diao");
        ht.Add(-18952, "die"); ht.Add(-18783, "ding"); ht.Add(-18774, "diu");
        ht.Add(-18773, "dong"); ht.Add(-18763, "dou"); ht.Add(-18756, "du");
        ht.Add(-18741, "duan"); ht.Add(-18735, "dui"); ht.Add(-18731, "dun");
        ht.Add(-18722, "duo"); ht.Add(-18710, "e"); ht.Add(-18697, "en");
        ht.Add(-18696, "er"); ht.Add(-18526, "fa"); ht.Add(-18518, "fan");
        ht.Add(-18501, "fang"); ht.Add(-18490, "fei"); ht.Add(-18478, "fen");
        ht.Add(-18463, "feng"); ht.Add(-18448, "fo"); ht.Add(-18447, "fou");
        ht.Add(-18446, "fu"); ht.Add(-18239, "ga"); ht.Add(-18237, "gai");
        ht.Add(-18231, "gan"); ht.Add(-18220, "gang"); ht.Add(-18211, "gao");
        ht.Add(-18201, "ge"); ht.Add(-18184, "gei"); ht.Add(-18183, "gen");
        ht.Add(-18181, "geng"); ht.Add(-18012, "gong"); ht.Add(-17997, "gou");
        ht.Add(-17988, "gu"); ht.Add(-17970, "gua"); ht.Add(-17964, "guai");
        ht.Add(-17961, "guan"); ht.Add(-17950, "guang"); ht.Add(-17947, "gui");
        ht.Add(-17931, "gun"); ht.Add(-17928, "guo"); ht.Add(-17922, "ha");
        ht.Add(-17759, "hai"); ht.Add(-17752, "han"); ht.Add(-17733, "hang");
        ht.Add(-17730, "hao"); ht.Add(-17721, "he"); ht.Add(-17703, "hei");
        ht.Add(-17701, "hen"); ht.Add(-17697, "heng"); ht.Add(-17692, "hong");
        ht.Add(-17683, "hou"); ht.Add(-17676, "hu"); ht.Add(-17496, "hua");
        ht.Add(-17487, "huai"); ht.Add(-17482, "huan"); ht.Add(-17468, "huang");
        ht.Add(-17454, "hui"); ht.Add(-17433, "hun"); ht.Add(-17427, "huo");
        ht.Add(-17417, "ji"); ht.Add(-17202, "jia"); ht.Add(-17185, "jian");
        ht.Add(-16983, "jiang"); ht.Add(-16970, "jiao"); ht.Add(-16942, "jie");
        ht.Add(-16915, "jin"); ht.Add(-16733, "jing"); ht.Add(-16708, "jiong");
        ht.Add(-16706, "jiu"); ht.Add(-16689, "ju"); ht.Add(-16664, "juan");
        ht.Add(-16657, "jue"); ht.Add(-16647, "jun"); ht.Add(-16474, "ka");
        ht.Add(-16470, "kai"); ht.Add(-16465, "kan"); ht.Add(-16459, "kang");
        ht.Add(-16452, "kao"); ht.Add(-16448, "ke"); ht.Add(-16433, "ken");
        ht.Add(-16429, "keng"); ht.Add(-16427, "kong"); ht.Add(-16423, "kou");
        ht.Add(-16419, "ku"); ht.Add(-16412, "kua"); ht.Add(-16407, "kuai");
        ht.Add(-16403, "kuan"); ht.Add(-16401, "kuang"); ht.Add(-16393, "kui");
        ht.Add(-16220, "kun"); ht.Add(-16216, "kuo"); ht.Add(-16212, "la");
        ht.Add(-16205, "lai"); ht.Add(-16202, "lan"); ht.Add(-16187, "lang");
        ht.Add(-16180, "lao"); ht.Add(-16171, "le"); ht.Add(-16169, "lei");
        ht.Add(-16158, "leng"); ht.Add(-16155, "li"); ht.Add(-15959, "lia");
        ht.Add(-15958, "lian"); ht.Add(-15944, "liang"); ht.Add(-15933, "liao");
        ht.Add(-15920, "lie"); ht.Add(-15915, "lin"); ht.Add(-15903, "ling");
        ht.Add(-15889, "liu"); ht.Add(-15878, "long"); ht.Add(-15707, "lou");
        ht.Add(-15701, "lu"); ht.Add(-15681, "lv"); ht.Add(-15667, "luan");
        ht.Add(-15661, "lue"); ht.Add(-15659, "lun"); ht.Add(-15652, "luo");
        ht.Add(-15640, "ma"); ht.Add(-15631, "mai"); ht.Add(-15625, "man");
        ht.Add(-15454, "mang"); ht.Add(-15448, "mao"); ht.Add(-15436, "me");
        ht.Add(-15435, "mei"); ht.Add(-15419, "men"); ht.Add(-15416, "meng");
        ht.Add(-15408, "mi"); ht.Add(-15394, "mian"); ht.Add(-15385, "miao");
        ht.Add(-15377, "mie"); ht.Add(-15375, "min"); ht.Add(-15369, "ming");
        ht.Add(-15363, "miu"); ht.Add(-15362, "mo"); ht.Add(-15183, "mou");
        ht.Add(-15180, "mu"); ht.Add(-15165, "na"); ht.Add(-15158, "nai");
        ht.Add(-15153, "nan"); ht.Add(-15150, "nang"); ht.Add(-15149, "nao");
        ht.Add(-15144, "ne"); ht.Add(-15143, "nei"); ht.Add(-15141, "nen");
        ht.Add(-15140, "neng"); ht.Add(-15139, "ni"); ht.Add(-15128, "nian");
        ht.Add(-15121, "niang"); ht.Add(-15119, "niao"); ht.Add(-15117, "nie");
        ht.Add(-15110, "nin"); ht.Add(-15109, "ning"); ht.Add(-14941, "niu");
        ht.Add(-14937, "nong"); ht.Add(-14933, "nu"); ht.Add(-14930, "nv");
        ht.Add(-14929, "nuan"); ht.Add(-14928, "nue"); ht.Add(-14926, "nuo");
        ht.Add(-14922, "o"); ht.Add(-14921, "ou"); ht.Add(-14914, "pa");
        ht.Add(-14908, "pai"); ht.Add(-14902, "pan"); ht.Add(-14894, "pang");
        ht.Add(-14889, "pao"); ht.Add(-14882, "pei"); ht.Add(-14873, "pen");
        ht.Add(-14871, "peng"); ht.Add(-14857, "pi"); ht.Add(-14678, "pian");
        ht.Add(-14674, "piao"); ht.Add(-14670, "pie"); ht.Add(-14668, "pin");
        ht.Add(-14663, "ping"); ht.Add(-14654, "po"); ht.Add(-14645, "pu");
        ht.Add(-14630, "qi"); ht.Add(-14594, "qia"); ht.Add(-14429, "qian");
        ht.Add(-14407, "qiang"); ht.Add(-14399, "qiao"); ht.Add(-14384, "qie");
        ht.Add(-14379, "qin"); ht.Add(-14368, "qing"); ht.Add(-14355, "qiong");
        ht.Add(-14353, "qiu"); ht.Add(-14345, "qu"); ht.Add(-14170, "quan");
        ht.Add(-14159, "que"); ht.Add(-14151, "qun"); ht.Add(-14149, "ran");
        ht.Add(-14145, "rang"); ht.Add(-14140, "rao"); ht.Add(-14137, "re");
        ht.Add(-14135, "ren"); ht.Add(-14125, "reng"); ht.Add(-14123, "ri");
        ht.Add(-14122, "rong"); ht.Add(-14112, "rou"); ht.Add(-14109, "ru");
        ht.Add(-14099, "ruan"); ht.Add(-14097, "rui"); ht.Add(-14094, "run");
        ht.Add(-14092, "ruo"); ht.Add(-14090, "sa"); ht.Add(-14087, "sai");
        ht.Add(-14083, "san"); ht.Add(-13917, "sang"); ht.Add(-13914, "sao");
        ht.Add(-13910, "se"); ht.Add(-13907, "sen"); ht.Add(-13906, "seng");
        ht.Add(-13905, "sha"); ht.Add(-13896, "shai"); ht.Add(-13894, "shan");
        ht.Add(-13878, "shang"); ht.Add(-13870, "shao"); ht.Add(-13859, "she");
        ht.Add(-13847, "shen"); ht.Add(-13831, "sheng"); ht.Add(-13658, "shi");
        ht.Add(-13611, "shou"); ht.Add(-13601, "shu"); ht.Add(-13406, "shua");
        ht.Add(-13404, "shuai"); ht.Add(-13400, "shuan"); ht.Add(-13398, "shuang");
        ht.Add(-13395, "shui"); ht.Add(-13391, "shun"); ht.Add(-13387, "shuo");
        ht.Add(-13383, "si"); ht.Add(-13367, "song"); ht.Add(-13359, "sou");
        ht.Add(-13356, "su"); ht.Add(-13343, "suan"); ht.Add(-13340, "sui");
        ht.Add(-13329, "sun"); ht.Add(-13326, "suo"); ht.Add(-13318, "ta");
        ht.Add(-13147, "tai"); ht.Add(-13138, "tan"); ht.Add(-13120, "tang");
        ht.Add(-13107, "tao"); ht.Add(-13096, "te"); ht.Add(-13095, "teng");
        ht.Add(-13091, "ti"); ht.Add(-13076, "tian"); ht.Add(-13068, "tiao");
        ht.Add(-13063, "tie"); ht.Add(-13060, "ting"); ht.Add(-12888, "tong");
        ht.Add(-12875, "tou"); ht.Add(-12871, "tu"); ht.Add(-12860, "tuan");
        ht.Add(-12858, "tui"); ht.Add(-12852, "tun"); ht.Add(-12849, "tuo");
        ht.Add(-12838, "wa"); ht.Add(-12831, "wai"); ht.Add(-12829, "wan");
        ht.Add(-12812, "wang"); ht.Add(-12802, "wei"); ht.Add(-12607, "wen");
        ht.Add(-12597, "weng"); ht.Add(-12594, "wo"); ht.Add(-12585, "wu");
        ht.Add(-12556, "xi"); ht.Add(-12359, "xia"); ht.Add(-12346, "xian");
        ht.Add(-12320, "xiang"); ht.Add(-12300, "xiao"); ht.Add(-12120, "xie");
        ht.Add(-12099, "xin"); ht.Add(-12089, "xing"); ht.Add(-12074, "xiong");
        ht.Add(-12067, "xiu"); ht.Add(-12058, "xu"); ht.Add(-12039, "xuan");
        ht.Add(-11867, "xue"); ht.Add(-11861, "xun"); ht.Add(-11847, "ya");
        ht.Add(-11831, "yan"); ht.Add(-11798, "yang"); ht.Add(-11781, "yao");
        ht.Add(-11604, "ye"); ht.Add(-11589, "yi"); ht.Add(-11536, "yin");
        ht.Add(-11358, "ying"); ht.Add(-11340, "yo"); ht.Add(-11339, "yong");
        ht.Add(-11324, "you"); ht.Add(-11303, "yu"); ht.Add(-11097, "yuan");
        ht.Add(-11077, "yue"); ht.Add(-11067, "yun"); ht.Add(-11055, "za");
        ht.Add(-11052, "zai"); ht.Add(-11045, "zan"); ht.Add(-11041, "zang");
        ht.Add(-11038, "zao"); ht.Add(-11024, "ze"); ht.Add(-11020, "zei");
        ht.Add(-11019, "zen"); ht.Add(-11018, "zeng"); ht.Add(-11014, "zha");
        ht.Add(-10838, "zhai"); ht.Add(-10832, "zhan"); ht.Add(-10815, "zhang");
        ht.Add(-10800, "zhao"); ht.Add(-10790, "zhe"); ht.Add(-10780, "zhen");
        ht.Add(-10764, "zheng"); ht.Add(-10587, "zhi"); ht.Add(-10544, "zhong");
        ht.Add(-10533, "zhou"); ht.Add(-10519, "zhu"); ht.Add(-10331, "zhua");
        ht.Add(-10329, "zhuai"); ht.Add(-10328, "zhuan"); ht.Add(-10322, "zhuang");
        ht.Add(-10315, "zhui"); ht.Add(-10309, "zhun"); ht.Add(-10307, "zhuo");
        ht.Add(-10296, "zi"); ht.Add(-10281, "zong"); ht.Add(-10274, "zou");
        ht.Add(-10270, "zu"); ht.Add(-10262, "zuan"); ht.Add(-10260, "zui");
        ht.Add(-10256, "zun"); ht.Add(-10254, "zuo"); ht.Add(-10247, "zz");
        return ht;
    }

}
 
分享到:
评论

相关推荐

    C#汉字转拼音(npinyin)将中文转换成拼音全文或首字母

    在IT领域,尤其是在...总的来说,"C#汉字转拼音(npinyin)"库为C#开发者提供了一种强大的工具,使他们能够方便地处理中文字符,将汉字与英文环境下的操作更好地结合在一起,极大地扩展了C#在中文处理领域的应用范围。

    C# 拼音转化汉字 汉字转化拼音

    本文将深入探讨“C#”编程语言如何实现汉字与拼音之间的转化,以及这一过程中的关键知识点。 首先,汉字转化为拼音是基于汉语拼音系统,它将每个汉字映射到对应的拼音。在C#中,可以使用.NET框架提供的`System....

    C#实现汉字拼音获取类

    总的来说,C#实现的汉字拼音获取类是处理中文内容的重要工具,它能够帮助开发者克服中文字符与拼音之间的障碍,提高软件的本地化能力和用户体验。理解并熟练运用这类工具,对于提升C#开发者的技能水平大有裨益。

    C#拼音检索示例代码

    在本项目中,"C#拼音检索示例代码"是一个基于C#编程语言实现的用于中文文本检索的程序。此程序的核心功能是将中文字符转换为对应的拼音,并且支持在数据库中进行模糊查询,以便用户可以利用拼音进行关键词搜索。下面...

    C#汉字转拼音(直接用)

    C#汉字转拼音(直接用),无需修改

    中文转化为拼音程序

    总之,中文转化为拼音是通过理解Unicode编码、构建拼音数据结构、处理多音字和声调以及组合拼音来实现的。在C# 2005环境下,这通常需要自定义算法或利用第三方库。如果你对这个话题感兴趣,深入研究源代码将是一个很...

    Xqk.Chinese 把中文转化成拼音的C#类库代码

    Xqk.Chinese是一个专门针对这种情况设计的C#类库,它能够将中文汉字高效地转化为对应的拼音形式。本文将深入探讨该类库的核心功能、实现原理以及使用方法。 Xqk.Chinese类库主要功能: 1. **拼音转换**:这个库的...

    汉字句子转化为拼音句子或转化为拼音缩写

    汉字句子转化为拼音句子或转化为拼音缩写, /// /// 汉字句子转化为拼音句子。 /// /// 汉字句子。 /// 拼音句子。 /// /// 汉字句子转化为拼音缩写。 /// /// 汉字句子。 /// 拼音缩写。...

    C#汉字转拼音源码(十分经典)

    本压缩包文件“C#汉字转拼音源码(十分经典)”很可能包含了一段高效且实用的代码示例,帮助开发者实现这一功能。 首先,我们要理解汉字转拼音的基本原理。在C#中,通常使用Pinyin4net、SharpPinyin或Microsoft ...

    C#实现汉字转拼音,非常全,亲测

    这个“C#实现汉字转拼音,非常全,亲测”的资源很可能是包含了一系列用于汉字转拼音的C#代码示例,这在开发涉及中文处理的应用程序时非常有用。下面将详细解释汉字转拼音的概念,以及如何在C#中实现这一功能。 汉字...

    C#汉字转拼音(简拼/全拼)源码

    在本案例中,我们讨论的主题是"C#汉字转拼音(简拼/全拼)源码",这是一款使用C#编程语言实现的小程序,其主要功能是将输入的汉字转化为简拼和全拼。 首先,我们需要了解C#的基础知识。C#是由微软公司开发的一种...

    C#汉字转化拼音,.net 汉字转换拼音

    本篇将详细介绍如何在C#中进行汉字到拼音的转换,并通过一个简单的示例代码帮助你理解其工作原理。 首先,我们需要了解.NET框架中用于汉字转拼音的类库,其中最常用的是`System.Speech`命名空间下的`...

    汉字转化拼音asp.net C#

    首先,我们需要理解标题中的“汉字转化拼音asp.net C#”指的是利用C#编程语言,在ASP.NET平台上开发一个功能,这个功能可以将输入的汉字转换为对应的汉语拼音。这个过程通常用于搜索引擎优化(SEO)、语音合成、或者...

    C# 汉字转换成拼音码和五笔码

    在这个程序中,C#被用来编写代码以实现汉字与拼音、五笔码之间的转换逻辑。 2. **汉字与拼音转换**:程序能够将输入的汉字转换为拼音,这通常通过调用特定的库或API来实现,例如Windows API或开源的Pinyin4net库。...

    汉字转拼音c#写法

    在汉字转拼音方面,我们可以利用其Synthesizer类中的Speak方法,通过语音合成将汉字转化为拼音。虽然这不是直接的转换,但可以通过录音并捕获音频的文本表示来间接实现。这种方法简单但效率较低,适用于小规模的应用...

    C#获取汉字拼音

    在C#编程语言中,处理中文字符,尤其是将汉字转换为拼音的需求,在各种应用场景下显得尤为重要。本文将深入探讨如何使用C#来实现这一功能,并通过分析一个具体的代码示例,来解释其工作原理、使用方法以及可能的优化...

    简繁体汉字转化为拼音

    上述代码将打印出"简繁体汉字转化为拼音"的拼音表示。 总之,进行简繁体汉字到拼音的转换,我们需要利用.NET提供的类库或者引入第三方库,如Pinyin4Net。通过理解字符编码、文化信息以及汉字拼音规则,我们可以...

    c#汉字拼音互转,带声调(asp.net)

    汉字到拼音的转换是将汉字转化为汉语拼音的过程,通常涉及到多音字和声调的问题。声调是汉语发音的重要组成部分,分为一、二、三、四声,分别用数字1、2、3、4表示,或者用符号'-'、'^'、'ˇ'、'`'来标记。 在C#中...

    中文转化成拼音

    源码通常是指软件项目的原始代码,对于“中文转化成拼音”的实现,源码可能包含了C#、ASP.NET或者其他编程语言的实现细节。这些源码可以供开发者学习和参考,理解如何将中文字符转换为拼音的内部逻辑,也可以直接在...

Global site tag (gtag.js) - Google Analytics