繁体字変換簡体字


まず、このアドレスにクラスライブラリをダウンロードします.
http://www.microsoft.com/downloads/zh-cn/confirmation.aspx?FamilyID=44cac7f0-633b-477d-aed2-99aee642fc10&DisplayLang=zh-cn
 
转换类库名称
この2つの提供はマイクロソフトアジア漢字開発センターが開発したものです.2009年3月31日、マイクロソフトはMicrosoft Visual Studio International Pack 1.0 SR 1を発表した.Visual Studio International Packには、拡張されたクラスライブラリのセットが含まれています.NET Frameworkのグローバル化ソフトウェア開発へのサポート.このクラスライブラリで提供するクラスを使用します.NET開発者は、多文化多言語をサポートするソフトウェアアプリケーションの作成をより容易にすることができます.
説明
Visual Studio International Packには、拡張されたクラスライブラリのセットが含まれています.NET Frameworkのグローバル化ソフトウェア開発へのサポート.このクラスライブラリで提供するクラスを使用します.NET開発者は、多文化多言語をサポートするソフトウェアアプリケーションの作成をより容易にすることができます.このパッケージ1.0版では、以下の7つのコンポーネントを強化する.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)が含まれており、簡体字中国語リソースファイル間の変換をサポートしています.ダウンロード完了後、解凍を行い、中には7つのmsiファイルがあり、そのうち:CHSPinYinConv.msiは漢字のピンインに関するもので、CHTCHSConv.msiは簡体字と繁体字を相互変換し,この2つのmsiを値でインストールすればよい.インストールが完了したら、VSに参照を追加する必要があります.参照:C:Program FilesMicrosoft Visual Studio International PackSimplified Chinese Pin-Yin Conversion Library下とC:Program FilesMicrosoft Visual Studio International PackTraditional Chinese to Simplified Chinese Conversion Library and Add-In Toolで使用できます.
これを呼び出すと、タイトルのすべての機能が実現されます.コードは以下の通りです(コメントを提供します).
using System;
using System.Windows.Forms;
using Microsoft.International.Converters.PinYinConverter;
using Microsoft.International.Converters.TraditionalChineseToSimplifiedConverter;
using System.Collections.ObjectModel;

namespace ChineseWordDeal
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        /// <summary>
        ///        
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void button2_Click(object sender, EventArgs e)
        {
            textBox3.Clear();
            int L = GetChars().Length;
            string Res = "";
            for (int i = 0; i < L; i++)
            {
                char C = GetChars()[i];
                //          
                if (ChineseChar.IsValidChar(C))
                {
                    //       
                    Res += ChineseChar.GetStrokeNumber(C).ToString() + ",";
                }
                else
                {
                    //         ? 
                    Res += ("?,");
                }
            }
            Res = Res.Substring(0, Res.Length - 1);
            textBox3.Text = Res;
        }

        //         ,     
        private void button1_Click(object sender, EventArgs e)
        {
            textBox2.Clear();
            int L = GetChars().Length;
            string Res = "";
            for (int i = 0; i < L; i++)
            {
                char C = GetChars()[i];

                if (ChineseChar.IsValidChar(C))
                {
                    ChineseChar CC = new ChineseChar(C);
                    //             ,      
                    ReadOnlyCollection<string> roc = CC.Pinyins;
                    //        
                    string Py = CC.Pinyins[0];
                    //       ,     
                    Res += Py.Substring(0, Py.Length - 1) + ",";
                }
                //        
                else { Res += "?,"; }
            }
            //        
            Res = Res.Substring(0, Res.Length - 1);
            textBox2.Text = Res;
        }
        //         
        private void textBox1_TextChanged(object sender, EventArgs e)
        {

            label4.Text = "";
            int L = GetChars().Length;
            int k = 0;
            for (int i = 0; i < L; i++)
            {
                char C = GetChars()[i];

                if (ChineseChar.IsValidChar(C))
                {
                    k++;
                }
            }
            label4.Text = "      :" + k.ToString();

        }
        //               
        public char[] GetChars()
        {
            char[] Cs = textBox1.Text.Trim().ToCharArray();
            return Cs;
        }

        //        ,    。       
        private void button3_Click(object sender, EventArgs e)
        {
            richTextBox1.Clear();
            int L = GetChars().Length;
            string Res = "";
            for (int i = 0; i < L; i++)
            {
                char C = GetChars()[i];

                if (ChineseChar.IsValidChar(C))
                {
                    ChineseChar CC = new ChineseChar(C);
                    ReadOnlyCollection<string> roc = CC.Pinyins;
                    string R0 = "";
                    foreach (string s in roc)
                    {
                        R0 += (s + " ");
                    }
                    R0 = R0.Substring(0, R0.Length - 1) + "
"; Res += C + ":" + R0; } else { Res += "?" + "
"; } } Res = Res.Substring(0, Res.Length - 1); richTextBox1.Text = Res; } // private void button4_Click(object sender, EventArgs e) { textBox4.Clear(); String simText = textBox1.Text.Trim(); String traText = ChineseConverter.Convert(simText, ChineseConversionDirection.SimplifiedToTraditional); textBox4.Text = traText; } } }

効果は次のとおりです.
繁体转简体_第1张图片
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
ただし、主な注意点はいくつかあります.
このツールがどの漢字基準を参照しているのか分からないが、SDKでも説明は見られず、「孟」という字は辞書では多音字ではない.
ピンインの後ろの1,2,3,4,5推測は声調マークであるべきだ:陰平、陽平、上声、去声、軽声.具体的には検証が必要かどうか.
次はMicrosoftです.International.Converters.PinYinConverter.ChineseCharクラスのメンバー:
簡体字中国語の読み方や筆画などの基本情報が封入されている.
メンバータイプメンバーの説明
ChineseCharNew(Char)
ChineseCharクラスのコンストラクション関数.
ChineseCharacter
この漢字文字を取得します.
CompareStrokeNumber(Char)
与えられた文字とインスタンス文字の筆画数を比較します.
静的メンバー
GetCharCount(Int16)
指定したストローク数を持つ文字数を取得します.
静的メンバー
GetChars(String)
指定されたピンインのすべての同音字を取得します.
静的メンバー
GetChars(Int16)
指定したストローク数を持つすべての文字列を取得します.
静的メンバー
GetHomophoneCount(String)
指定したピンインを持つ文字数を取得します.
静的メンバー
GetStrokeNumber(Char)
指定した文字のストローク数を取得します.
HasSound(String)
文字に指定された読み方があるかどうかを識別します.
IsHomophone(Char)
与えられた文字がインスタンス文字の同音文字であるかどうかを識別します.
静的メンバー
IsHomophone(Char, Char)
与えられた2文字が同音字であるかどうかを識別します.
IsPolyphone
この文字が多音字かどうかを取得します.
静的メンバー
IsValidChar(Char)
与えられた文字列が有効な漢字文字であるかどうかを識別します.
静的メンバー
IsValidPinyin(String)
与えられたピンインが有効なピンイン文字列であるかどうかを識別します.
静的メンバー
IsValidStrokeNumber(Int16)
与えられた筆画数が有効な筆画数であるかどうかを識別します.
PinyinCount
この文字のピンインの個数を取得します.
Pinyins
この文字のピンインを取得します.
StrokeNumber
この文字の筆画数を取得します.
その他の情報は、ランダムにインストールされたchmヘルプファイルに参加してください.
やっと漢字の問題を解決しました~~OK~!!収穫が豊富~~10/5/12
 
以上の内容は:http://hi.baidu.com/jiang_yy_jiang/blog/item/3a94321994308676dab4bd9f.html