ユーザーがASCIIエンコードされたテキスト入力をUTF-8エンコーディングに変換して、Unicodeフォントタイプを使用して表示できるようにしたいと考えています。たとえば、英語のアルファベット 'l' を ASCII で Unicode では 'ക' として表示したいとします。l を 'ക' にマッピングできるように、マッピング システムも必要になると思います。この問題を解決するために私を助けてください。
3 に答える
テキストは ISCII (Indian Script Code for Information Interchange) です。適切なコード ページで ISCII を Unicode に変換する必要があります。次のメソッドは、仕事をする必要があります。Convert は、指定されたテキストをあるエンコーディングから別のエンコーディングに変換します。GetEncoding は、Convert メソッドで使用される Encoding オブジェクトを提供します。
サンプル コードは次の場所にあります。 /BCL/システム/テキスト/ISCIIEncoding@cs/1/ISCIIEncoding@cs
コード ページ識別子は、http: //msdn.microsoft.com/en-us/library/windows/desktop/dd317756 (v=vs.85).aspx で確認できます。
public static byte[] Convert(System.Text.Encoding srcEncoding, System.Text.Encoding dstEncoding, byte[] bytes) System.Text.Encoding のメンバー 概要: バイト配列全体をあるエンコーディングから別のエンコーディングに変換します。パラメータ: srcEncoding: バイトのエンコード形式。dstEncoding: ターゲットのエンコード形式。bytes: 戻り値: バイトを srcEncoding から dstEncoding に変換した結果を含む System.Byte 型の配列。
この
public static System.Text.Encoding GetEncoding(int codepage) System.Text.Encoding のメンバー 概要: 指定されたコード ページ識別子に関連付けられたエンコーディングを返します。パラメータ: codepage: 優先エンコーディングのコード ページ識別子。- または - 0、デフォルトのエンコーディングを使用します。戻り値: 指定されたコード ページに関連付けられた System.Text.Encoding。
ウィキペディアの記事によると、マラヤーラム語のコード ページは 57009 です。
Encoding.UTF8.GetString(Encoding.ASCII.GetBytes(input))