
C#で文字コードを調べるプログラムを作成しています。
そこで2つ質問をさせてください。
1つ目(文字コード調べ)
TextBoxに漢字を入力して,各エンコーディングの文字コードを調べるときに,UNICDEの場合,
Encoding enc_default = Encoding.GetEncoding(932);
string input = tb_input.Text;
byte[] byte_input = enc_default.GetBytes(input);
string outtext_unicode = "";
Encoding enc_unicode = Encoding.Unicode;
byte[] byte_unicode = Encoding.Convert(enc_default,enc_unicode, byte_input);
foreach (byte b in byte_unicode)
{
outtext_unicode += string.Format("{0:X}", (int)b);
}
tb_output_unicode.Text = outtext_unicode;
とすると,調べたい文字コードがLE(リトルエディアン)で出力されます。これをBE(ビッグエディアン)で出力されるにはどうしたらよいでしょうか?
ご存知の方がいらっしゃいましたら,ぜひ教えてください。
よろしくお願いいたします。
2つ目(文字コードから文字を取得する)
上記の質問と逆のパターンで,TextBoxに文字コードを入力してもらい,人間が読める文字に変換する場合下記のようなコードを書くと,
string codePoint_string = tb_output_unicode.Text;
int codePoint = int.Parse(codePoint_string);
char c = (char)codePoint;
tb_input.Text = Convert.ToString(c);
ASCIIの文字コードを入力した場合には,きちんと変換してくれるのですが,漢字の文字コードを入力すると,FormatExceptionが発生します。
何か勘違いをしているのかもしれませんが,いまいちやり方が創造できません。
こちらも,ご存知の方がいらっしゃいましたら,ご教示願います。
No.2ベストアンサー
- 回答日時:
フォームデザイナで,
Form1に対し,TextBox1とButton1を貼り付け,以下のコードを入力。
=============================
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim codePoint_string As String = TextBox1.Text
Dim codePoint As Integer = Integer.Parse(codePoint_string)
Me.Text = Char.ConvertFromUtf32(codePoint)
End Sub
End Class
'=========================
その後
http://homepage3.nifty.com/jgrammar/ja/tools/cod …
を利用して
文字「あ」がUTF-32で00003042=12354であることを確認後
TextBox1に12354を入力してButtonをクリックしたら
Form1に「あ」が表示された。・・・けどUTF-16だから違うんだよね?
http://msdn2.microsoft.com/en-us/library/wdh8k14 …
とか
http://msdn2.microsoft.com/en-us/library/z2ys180 …
とか使うのかもしれないけど良く解らん。
「あ~」と思わず叫んでしまいました。
そうですよね。
00003042=12354
ですよね。思い違いをしてました。FA11とか指定して,普通にInt.Parseしてました。
C#なので,
string codePoint_string = tb_output_unicode.Text;
int codePoint = Convert.ToInt16(codePoint_string, 16);
char c = (char)codePoint;
tb_input.Text = Convert.ToString(c);
で,文字を取り出せました。
本当にありがとうございます。上の回答とあわせて本当に感謝感激です。
No.1
- 回答日時:
俺はVB.NET系のユーザだ。
ファイルやらビットやらは苦手で、殆ど検証していない。
なので勘だ。
(1)
System.Text.Encoding.Unicodeプロパティではなく
http://msdn2.microsoft.com/en-us/library/system. …
System.Text.Encoding.BigEndianUnicodeプロパティを使うとどうなるか教えて欲しい
http://msdn2.microsoft.com/en-us/library/system. …
早速のアドバイスありがとうございます。
Encoding.BigEndianUnicode
で,満足できました。
見落としてました。本当に助かりました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript フォームが空欄の時にフォームの外をクリックすると、エラーが出るコードを調べています。 1 2023/06/25 11:51
- Excel(エクセル) Excelにて、フォルダ内のTextファイルをマクロで統合すると文字化けしてしまう時の解消コード 4 2023/01/01 07:32
- C言語・C++・C# C#テキストボックスの文字を配列にいれてその後表示する 4 2022/07/17 04:47
- JavaScript Javascriptが機能せず原因が分からないので教えて頂きたいです 3 2023/06/04 14:50
- その他(プログラミング・Web制作) python質問 1 2023/08/14 11:54
- Visual Basic(VBA) Selenium Basicの件 5 2023/04/10 20:55
- Java Javaの問題なのですが、「3文字以上の英数字文字列を入力し、文字列の中に文字(9)が出てくるまでの 1 2023/06/06 18:55
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- Visual Basic(VBA) 入力ボックスが繰り返しポップアップして止まらない。 下記コードでファイル名の変更をしたいのですが、変 1 2022/09/08 11:27
- C言語・C++・C# 宣言する関数の形が決まっている状態で、 str1とstr2の文字列をこの順に引っ付けてstrに保存し 2 2022/05/30 18:21
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
JavaのStringクラスに「外字」...
-
javascriptで文字列のsjis利用...
-
javaでのOracleのデータ登録の...
-
「C#」文字コードの取得&文字変換
-
C言語32bitから64bitの移行につ...
-
Visual Basic でのコードをASCI...
-
COBOLで半角カナを全角カナに変換
-
シフトJISのエンコード
-
特殊文字「\\」の変換の方法
-
jspでString型からlong型への変換
-
全角英数字とハイフンを半角に...
-
PerlプログラムをJavaに変換す...
-
Windows-31Jからutf-8への変換...
-
文字列の比較
-
電卓プログラムでかっこを対応...
-
UTF-8とUnicodeの互換性
-
javaの日本語並び替えについて...
-
10進201、16進C9 のASCIIコー...
-
byte型のマイナスの扱いについて
-
[Javascript]エンターキー押下...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ダブルクォーテーションのrepla...
-
javaで質問です。 文字列2023/2...
-
javascriptで文字列のsjis利用...
-
Path型をString型へ変換する(Java)
-
カタカナをローマジに変換する。
-
Visual Basic でのコードをASCI...
-
JavaのStringクラスに「外字」...
-
エクセルVBAで「〜」が表現でき...
-
Windows-31Jからutf-8への変換...
-
C言語32bitから64bitの移行につ...
-
文字列の比較
-
int型のゼロ埋め
-
javaの初歩的な質問です。
-
byte型のマイナスの扱いについて
-
substring バイト単位でやりたい
-
JAVAでのShift-JISとEUC-JP間の...
-
byte配列をImageに変換する
-
byte[] を long,float とかに...
-
UTF-8とUnicodeの互換性
-
COBOLで半角カナを全角カナに変換
おすすめ情報