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 - 類庫支援感知日文IME的輸入自動完成和一個文字框控制項的樣本。
- Korean Auto Complete TextBox Control - 支援韓文IME的智能感知和輸入自動完成的文字框控制項。
- 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);
}
}
}