您的位置:首页 > 其它

汉字的一些关注点,Microsoft Visual Studio International Pack 1.0 SR1 简体繁体转化,汉字属性,数值到大写的转化

2009-08-05 17:55 537 查看
Visual Studio International Pack 包含一组类库,该类库扩展了.NET
Framework对全球化软件开发的支持。使用该类库提供的类,.NET 开发人员可以更方便的创建支持多文化多语言的软件应用。SR1 包含对
Japanese Kana Conversion Library 和 Japanese Yomi Auto-Completion
Library 中软件缺陷的修正。

Visual Studio International Pack 包含一组类库,该类库扩展了.NET
Framework对全球化软件开发的支持。使用该类库提供的类,.NET 开发人员可以更方便的创建支持多文化多语言的软件应用。
该软件包1.0版提供下面七个组件以增强.NET Framework对全球化软件应用开发的支持。

East Asia Numeric Formatting Library - 支持将小写的数字字符串格式化成简体中文,繁体中文,日文和韩文的大写数字字符串。

Japanese Kana Conversion Library - 支持将日文假名(Kana)转化为另一种日文字符。

Japanese Text Alignment Library - 支持日文特有的一种对齐格式。

Japanese Yomi Auto-Completion Library - 类库支持感知日文输入法的输入自动完成和一个文本框控件的示例。

Korean Auto Complete TextBox Control - 支持韩文输入法的智能感知和输入自动完成的文本框控件。

Simplified Chinese Pin-Yin Conversion Library - 支持获取简体中文字符的常用属性比如拼音,多音字,同音字,笔画数。

Traditional
Chinese to Simplified Chinese Conversion Library and Add-In Tool -
支持简繁体中文之间的转换。该组件还包含一个Visual Studio集成开发环境中的插件(Add-in)支持简繁体中文资源文件之间的转换。

发布的SR1中修正了 Japanese Kana Conversion Library 和 Japanese Yomi Auto-Completion Library 中的软件缺陷, 其他库中没有改动。、

您是否有为了让转换简体繁体,数字到大写,汉字到拼音烦恼多吗?我反正都遇到过,所以觉得这个东西特好.....美中不足的就是数值到大写有些和中国的习惯不同..呵呵

代码实例:

using System;

using Microsoft.International.Converters.PinYinConverter;

using Microsoft.International.Converters.TraditionalChineseToSimplifiedConverter;

using System.Collections.ObjectModel;

using Microsoft.International.Formatters;

namespace HanZiToPinYinAndNumberToHanZi

{

    public class AndersConvertUtils

    {

        /// <summary>

        /// 获取汉字字符的信息

        /// </summary>

        /// <param name="chChar"></param>

        public static void getChineseChartInfo(Char chChar)

        {

            ChineseChar chineseChar = new ChineseChar(chChar);

            Console.WriteLine("处理汉字.....");

            //汉字的笔画

            string bh = chineseChar.StrokeNumber.ToString();

            Console.WriteLine("汉字" + chChar.ToString()+ "的笔画数:" + bh);

            //拼音个数

            string pyNumber = chineseChar.PinyinCount.ToString();

            Console.WriteLine("汉字"+ chChar.ToString()+"的拼音个数:" + pyNumber);

            //拼音

            ReadOnlyCollection<string> pys = chineseChar.Pinyins;

            foreach (string item in pys)

            {

                if (item != null)

                {

                    Console.WriteLine("汉字" + item.ToString() + "的拼音为:" + item);

                }

            }

            Console.WriteLine("处理拼音.....");

            char[] chChars = ChineseChar.GetChars(pys[0].ToString());

            Console.WriteLine("拼音为" + pys[0].ToString() + "的汉字一共有:" + chChars.Length.ToString()+ "个");

            foreach (char chCharItem in chChars)

            {

                Console.WriteLine("获选的汉字有:" + chCharItem.ToString());

            }

            Console.WriteLine("处理结束,按任意键退出运行.....");

            Console.ReadLine();

        }

        /// <summary>

        /// 简体字繁体字互相转化的工具

        /// </summary>

        public static void jianFanConvert()

        {

            Console.WriteLine("简体转化成繁体.....");

            String simText = " 欢迎光临[卢永超]";

            String traText = ChineseConverter.Convert(simText, ChineseConversionDirection.SimplifiedToTraditional);

            Console.WriteLine("简体字为:" + simText);

            Console.WriteLine("简体转化成繁体的测试结果:" + traText);

            string simText2 = ChineseConverter.Convert(traText, ChineseConversionDirection.TraditionalToSimplified);

            Console.WriteLine("繁体转换成简体的测试结果:" + simText2);

            Console.WriteLine("处理结束,按任意键退出运行.....");

            Console.ReadLine();

        }

        /// <summary>

        /// 处理数值和汉字的转化

        /// </summary>

        /// <param name="number"></param>

        public static void getNumberHanzi(double number)

        {

            Console.WriteLine("处理数值性数据和汉字之间的转化....");

            EastAsiaNumericFormatter eastAsiaNumericFormatter = new EastAsiaNumericFormatter();

            string NumberToHanziResult = string.Format(new EastAsiaNumericFormatter(), "{0:Ln}", number);

            Console.WriteLine("数字"+number.ToString()+ "的大写表述为:" + NumberToHanziResult);

           

            Console.WriteLine("处理结束,按任意键退出运行.....");

            Console.ReadLine();

        }

    }

    public class StartUpClass

    {

        static void Main(string[] args)

        {

 

            Char chChar = '卢';

            // 获取汉字的属性

            // AndersConvertUtils.getChineseChartInfo(chChar);

            // 简体繁体的互相转化

           //AndersConvertUtils.jianFanConvert();

            //数字和汉字的转化

            AndersConvertUtils.getNumberHanzi(9111.87);

        }

    }

}

 

 

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐