[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[jfriends:00084] Re: String を byte 配列で書き出す方法について



 檜山です。
色々とバイト型についての御意見、参考にさせて頂いています。
ありがとうございます。

頻繁に出てきます、
>オーバーフローによる予想外の値の改ざん
なのですが、これは具体的にどういったことを指すのでしょうか?
値が全く違うものになってしまうということなのでしょうか?

オーバーフローしているということで、下記の部分で例外を
スローしてみましたがキャッチしませんでした。
オーバーフローした時に問題になる部分というのは、
>オーバーフローによる予想外の値の改ざん
なのでしょうか。

> byte bytA = (byte)Integer.parseInt("87" , 16); → bytAは「-121」
> byte bytB = (byte)Integer.parseInt("A7" , 16); → bytBは「-89」

 当初質問させて頂いた理由というのは下記のような処理結果を
求めたかったからです。
 上記の「87A7」というのは独自の外字コードで、書き出した
ファイルをバイナリエディタで見たとき、
87 A7  と出ている。
テキストエディタで見ると文字化けしているが、逆に文字化けして
いれば良い。その後外字ファイルと突合させるのでバイナリエディタ
で上記のように出ていれば良い。

 しかし、皆様の意見を色々と伺っていて、今回やりたい事はでき
ましたが、このようなオーバーフローが確実なプログラムは書かない
方が良いような気がしてきましたが、どう思われますでしょうか。

 初歩的な質問で申し訳有りません。