Devanagri(ヒンディー語)スクリプトで自分の携帯電話からデスクトッププログラムにSMSメッセージを受信していますが、エンコーディングでデータを表示しています(例:091A09470924002009240924 )私が知ったのはユニコードです。これをヒンディー語のテキストに変換するための既存のライブラリはありますか?そうでない場合は、どうすればこの方法を書くことができますか?私はC#を使用しています。ユニバース符号化データをDevanagri(ヒンディー語)テキストに変換する方法
3
A
答えて
0
1
System.Text.Encodingクラスを使用します。メソッドGetChars(byte [])を持ちます。いくつかのヒンディー語のシンボルはいくつかの方法で記述できるので、おそらく適切なフォントが必要になるでしょう。
1
ここでは、Georgianユニコードをラテン語の同等のテキストに変換するために使用したコードスニペットを示します。必要な部分のみ説明
string[] charset = new string[33] { "a", "b", "g", "d", "e", "v", "z", "T", "i", "k", "l", "m", "n", "o", "p", "J", "r", "s","t", "u", "f", "q", "R", "y", "S", "C", "c", "Z", "w", "W", "x", "j", "h" };
string unicodeString = "აბ, - გდ";
string latin_string = "";
byte[] unicodeBytes = Encoding.Unicode.GetBytes(unicodeString);
for (int p = 0; p < unicodeBytes.Length/2; p++)
{
if (unicodeBytes[p * 2] > 207 && unicodeBytes[p * 2] < 241)
latin_string += charset[unicodeBytes[p * 2] - 208];
else
latin_string += Convert.ToChar(unicodeBytes[p * 2]).ToString();
}
:バイトの
Encoding.Unicode.GetBytes(unicodeString);
戻り配列を、この配列の長さは2 * unicodeString.Length
あります。ユニコードストリングからのすべての文字が1対のバイトを持つようにします。 よりよい説明のためのheres画像
unicodeBytes
デコードしたい文字を表すインデックスさえもインデックスに値があります。グルジアのアルファベットの最初の文字は240で終わる208で始まりました(合計33)。だからunicodeBytes
の値が[208; 240]の範囲にある場合は、charset
文字列配列を使用してラテン語の同等の文字列を取得する必要がありました。そうでない場合は、unicodeBytes
の値は単なるcharコードでした。
ライブラリがあるかどうかわかりませんが、この方法では独自のコンバータの書き方を基本的に理解できます。応答のための
関連する問題
- 1. ルビーと符号化変換
- 2. 英語のテキストをヒンディー語のmysqlデータベースから変換します
- 3. ヒンディー語/アラビア語の文字セットをpdfファイルからmobiファイルに変換する
- 4. テキスト暗号化/復号化方法Java
- 5. プロキシ再暗号化における暗号テキスト変換
- 6. 64ビット符号化テキストの3Desを復号する
- 7. 暗号化されたデータを文字列に変換する方法
- 8. アンドロイドのテキストへのヒンディー語の音声
- 9. 符号付き32ビット整数を符号なし32ビット整数に変換する方法は?
- 10. ハフマン符号化のトラバーサル符号化
- 11. オーディオPCMサンプルの符号なしshortを符号付きshortに変換する
- 12. 符号なしの符号付き変換をJavaで逆
- 13. URLに符号化された@記号(%40)がURLに変換されてURLに変換されます
- 14. Lockbox2の暗号テキストをLockbox3の暗号テキストに変換する
- 15. ドイツ語のテキストをvb6.0の英語のテキストに変換する
- 16. ローカライズ:中国語テキストに英語のテキストを変換する
- 17. SQL Server 2005データベースのヒンディー語データ
- 18. アポストロフィを符号化する
- 19. 32ビット符号なし "Real"データ型(2つの16ビット符号付きワードに分割)をjavascriptに変換
- 20. モールス符号をテキストにデコードする
- 21. 単語埋め込みのTensorFlow双方向LSTM符号化
- 22. チャンク内のデータを暗号化/復号化する方法は?
- 23. コアデータのデータを暗号化/復号化する方法は?
- 24. 符号化シルベスターシーケンス
- 25. 16進形式のscanfデータを符号なしのshortに変換する
- 26. 再符号化Redisのデータ設定の変更
- 27. Windows Phone7でヒンディー語のコンテンツを表示する方法は?
- 28. 8ビット符号なしPCMを8ビット符号付きPCMに変換
- 29. VSTS符号化UiスクリプトをQTPに呼び出す方法は?
- 30. 固定長符号化を生成するハフマン符号
ちょうどあなたの「ユニコードれる」あなたは2バイトで表現Unicodeのコードポイントを見ているにメモを追加します。私。あなたのキャラクターは091A 0947 0924 0020 0924 0924です。適切なDevangariコードページはhttp://www.unicode.org/charts/PDF/U0900.pdfで見ることができます。 – borrible