C# 應用微軟的Visual Studio International Pack 類庫提取漢字拼音首字母

來源:互聯網
上載者:User
 

本文轉自:http://www.cnblogs.com/yazdao/archive/2011/06/04/2072488.html

昨天經過網友提示,提取漢字拼音的辦法可以應用微軟的一個類庫 Visual Studio International Pack ,今天試了一試,確切好用!下面分享下應用辦法:

起首下載Visual Studio International Pack 1.0,官方:http://www.microsoft.com/downloads/zh-cn/details.aspx?FamilyID=44CAC7F0-633B-477D-AED2-99AEE642FC10&displaylang=zh-cn。下載完畢後解壓,解壓後可以發明7個MSI安裝檔案,此中CHSPinYinConv.msi是漢字拼音組件,CHTCHSConv.msi是進行繁簡體互轉組件,安裝這兩個MSI就可以了 (x86操縱體繫上的預設安裝目次是 C:\Program Files\Microsoft Visual Studio International Pack\) 。安裝完畢後,須要在VS裡添加引用,分別引用:C:\Program Files\Microsoft Visual Studio International Pack\Simplified Chinese Pin-Yin Conversion Library(拼音)下和C:\Program Files\Microsoft Visual Studio International Pack\Traditional Chinese to Simplified Chinese Conversion Library and Add-In Tool(繁簡互轉)下的dll 即可應用。

 

完成上方的工作後,應用辦法就很是簡單了,下面看代碼:

 

 

 

using Microsoft.International.Converters.PinYinConverter;//匯入拼音相干

namespace WebApplication2
{
    public class Class1
    {   
        /// <summary> 
        /// 漢字轉化為拼音
        /// </summary> 
        /// <param name="str">漢字</param> 
        /// <returns>全拼</returns> 
        public static string GetPinyin(string str)
        {
            string r = string.Empty;
            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();
                }
            }
            return r;
        }

        /// <summary> 
        /// 漢字轉化為拼音首字母
        /// </summary> 
        /// <param name="str">漢字</param> 
        /// <returns>首字母</returns> 
        public static string GetFirstPinyin(string str)
        {
            string r = string.Empty;
            foreach (char obj in str)
            {
                try
                {
                    ChineseChar chineseChar = new ChineseChar(obj);
                    string t = chineseChar.Pinyins[0].ToString();
                    r += t.Substring(0, 1);
                }
                catch
                {
                    r += obj.ToString();
                }
            }
            return r;
        }
    }
}

複製代碼

 

 

 

調用辦法:(重視先引用)

 

GetPinyin("風影");//擷取全拼
GetFirstPinyin("風影");//擷取首字母

 

 

 

是不是很是簡單呢?有了這個類庫就省事多了!趁便再補充一下繁簡體互轉的辦法,某些時辰可能會用到:

 

先匯入

 

using Microsoft.International.Converters.TraditionalChineseToSimplifiedConverter;

 

        /// <summary> 
        /// 簡體轉換為繁體
        /// </summary> 
        /// <param name="str">簡體字</param> 
        /// <returns>繁體字</returns> 
        public static string GetTraditional(string str)
        {
            string r = string.Empty;
            r = ChineseConverter.Convert(str, ChineseConversionDirection.SimplifiedToTraditional);
            return r;
        }
        /// <summary> 
        /// 繁體轉換為簡體
        /// </summary> 
        /// <param name="str">繁體字</param> 
        /// <returns>簡體字</returns> 
        public static string GetSimplified(string str)
        {
            string r = string.Empty;
            r = ChineseConverter.Convert(str, ChineseConversionDirection.TraditionalToSimplified);
            return r;
        }

複製代碼

 

該類庫的功能概述

 

Microsoft Visual Studio International Pack 1.0版 包含以下功能:

    • 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)支撐簡繁體中文資料檔案之間的轉換。 

       

      Visual Studio International Feature Pack 2.0 是對 1.0 版本的擴大,包含一組控制項和類庫:

      • Yomigana Framework 包含了類庫和控制項。 
        • 類庫:Yomigana 類庫容許對串(string)類型加註 Yomigana,同時也支撐對一般類型的註解功能,任何實現了IEnumerable介面的對象都可以被串類型和泛型的執行個體註解。為了簡化錯雜的註解字串鬥勁特設計了支撐各類日文鬥勁選項的鬥勁類型。 
          • 通用的一些類,用泛型實現對一個可列舉的類型注音。
          • 特別目標的一些類,用以上泛型實現對一個字串用某種類型中注音。
          • 特別目標的一些StringAnnotation 類,用以上泛型實現對一個字串用字串注音,包含解析和格局化功能。
          • 一個鬥勁器類,應用以上類實現鬥勁字串。
          • 一個實現了 IEnumerable <string> 的資料布局,把一個字串分成列舉的字串段,並用 IEnumerator <string> 輸出。
        • 控制項: 
          • 加強的Ajax/WPF/WinForm 文字框(TextBox)控制項 用來按照使用者的輸入捕獲讀音。
          • 一個加強的應用Ruby標籤的ASP.NET Label控制項。
      • Chinese Text Alignment Class Library and TextBox Controls 包含支撐簡體中文文本對齊的WinForm 和 WPF 的TextBox控制項, 以及供協助開闢人員很輕易地按中文文本對齊顯示字串的一個類庫。
      • Chinese Auto Complete Class Library and TextBox Controls 包含支撐感知簡體中文和繁體中文IME並主動完成的WinForm 和 WPF 的TextBox控制項, 以及供開闢人員很輕易地向標準控制項添加感知IME並主動完成功能的一個類庫。
      • Korean Auto Complete Class Library and ComboBox Controls 包含支撐感知韓語IME並主動完成的WinForm 和 WPF 的ComboBox控制項, 以及供開闢人員很輕易地向標準控制項添加感知IME並主動完成功能的一個類庫。
      • Numeric Formatting Class Library 包含支撐五種說話的數字格局化成文字的類, 2.0 版支撐格局化阿拉伯數字為阿拉伯文字。

      可見,這個類庫在開闢國際化法度時是很是實用的。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.