亲宝软件园·资讯

展开

汉字转化拼音 C# 汉字转化拼音的简单实例代码

人气:0
想了解C# 汉字转化拼音的简单实例代码的相关内容吗,在本文为您仔细讲解汉字转化拼音的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:汉字,转化,拼音,下面大家一起来学习吧。

首先引入ChnCharInfo.dll 第3方的一个库

代码:

btn_chinChar_Click事件:

复制代码 代码如下:

private void btn_chinChar_Click(object sender, EventArgs e)
        {
            ChineseChar cr =null;
            string str = "", txtString = txt_string.Text.Trim();
            if (!string.IsNullOrEmpty(txtString))
            {
                foreach (var item in cr.GetChineseSpellings(txtString))
                {
                    str += item + "-";
                }
            }
            MessageBox.Show(str);
        }

扩展方法:

复制代码 代码如下:

public static class ChineseCharacters
    {
        public static ICollection<string> GetChineseSpellings(this ChineseChar chinChar ,string value)
        {
            List<string> list;
            int i,start;
            char c;

            if (string.IsNullOrEmpty(value))return null;

            start = 0;
            list = new List<string>();

            for (i = 0; i < value.Length; ++i)
            {
                c = value[i];
                if (ChineseChar.IsValidChar(c))
                {
                    if (i > start)
                    {
                        list.Add(value.Substring(start, i - start));
                    }
                    chinChar = new ChineseChar(c);
                    list.Add(chinChar.Pinyins.First().Substring(0, chinChar.Pinyins.First().Length - 1).ToLower());
                    start = i + 1;
                }
            }

            if (i > start)
            {
                list.Add(value.Substring(start, i - start));
            }
            return list;
        }
    }


运用结果:

加载全部内容

相关教程
猜你喜欢
用户评论