.Net、C# 漢字轉拼音,簡體繁體轉換方法


Visual Studio International Pack 包含一組類庫,該類庫擴展了.NET Framework對全球化軟件開發的支持。使用該類庫提供的類,.NET 開發人員可以更方便的創建支持多文化多語言的軟件應用
下載地址: 下載地址
 
(1) (ChnCharInfo.dll)
Simplified Chinese Pin-Yin Conversion Library
- 支持獲取簡體中文字符的常用屬性比如拼音,多音字,同音字,筆畫數。
 
【例如:】
1 Microsoft.International.Converters.PinYinConverter.ChineseChar cc=new Microsoft.International.Converters.PinYinConverter.ChineseChar('');

 

 
 
(2)(ChineseConverter.dll)
Traditional Chinese to Simplified Chinese Conversion Library and Add-In Tool
- 支持簡繁體中文之間的轉換。該組件還包含一個Visual Studio集成開發環境中的插件(Add-in)支持簡繁體中文資源文件之間的轉換。
 
【例如:】
--簡體轉換為繁體字
1 string temp_1 = Microsoft.International.Converters.TraditionalChineseToSimplifiedConverter.ChineseConverter.Convert("中華人民共和國", 
2  
3 Microsoft.International.Converters.TraditionalChineseToSimplifiedConverter.ChineseConversionDirection.SimplifiedToTraditional);

 

 
--繁體字轉換為簡體
1 string temp_2 = Microsoft.International.Converters.TraditionalChineseToSimplifiedConverter.ChineseConverter.Convert(temp_1, 
2  
3 Microsoft.International.Converters.TraditionalChineseToSimplifiedConverter.ChineseConversionDirection.TraditionalToSimplified);

 

 
 
(3)(EastAsiaNumericFormatter.dll)
East Asia Numeric Formatting Library - 支持將小寫的數字字符串格式化成簡體中文,繁體中文,日文和韓文的大寫數字字符串。
【例如:】
--將數字轉換為大寫簡體中文(拾貳億叄仟肆佰伍拾陸萬柒仟捌佰玖拾點肆伍)
 
1  1 string temp_4 = string.Format(new Microsoft.International.Formatters.EastAsiaNumericFormatter(), "{0:L}", 1234567890.45); 

 

 
--將數字轉換為小寫(十二億三千四百五十六萬七千八百九十點四五)
 
1 string temp_6 = string.Format(new Microsoft.International.Formatters.EastAsiaNumericFormatter(), "{0:Ln}", 1234567890.45);

 

 
--將數字轉換為貨幣(拾貳億叄仟肆佰伍拾陸萬柒仟捌佰玖拾點肆伍)
 
1 string temp_7 = string.Format(new Microsoft.International.Formatters.EastAsiaNumericFormatter(), "{0:Lc}", 1234567890.45);

實例代碼:

//簡體/繁體切換
            string temp_1 = ChineseConverter.Convert("中國人", ChineseConversionDirection.TraditionalToSimplified);
            string temp_2 = ChineseConverter.Convert("中國人", ChineseConversionDirection.SimplifiedToTraditional);
            Console.WriteLine("簡體轉換:"+temp_1+"\n繁體轉換:"+temp_2);
            //漢字轉換拼音
            string r = string.Empty;
            Console.Write("請輸入任意漢字:");
            string str = Console.ReadLine();
            foreach (char obj in str)
            {
                try
                {
                    ChineseChar chineseChar = new ChineseChar(obj);
                    string t = chineseChar.Pinyins[0].ToString();
                    r += t.Substring(0, t.Length - 1);
                }
                catch
                {
                    r += obj.ToString();
                }
            }
            Console.WriteLine(r.ToLower().ToString());

源碼:

  

結果:

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM