Java逆コンパイラ

jadというjavaの逆コンパイラがあるらしい。
これにより、クラスファイルからソースコードを可能な限り復元できる。

なお、日本語部分が\uxxxxという風にUTF-16BEをエスケープした文字列に
置き換わるようなので変換ツールをじっくりと作りました。Perl(ActivePerl)用です。
何度も同じことをやっているのに未だ覚えられません。小一時間迷った挙句、
過去の日記を参照してしまいました。

#! /usr/bin/perl
use Unicode::String qw(utf16be);

while(<>){
	s/\\u([0-9A-F]{4})/utf16be(pack('H4',$1))->utf8/eg;
	print;
}

ところで、
binmode STDOUT,":UTF-8";
とやると、ファイルにBOMをつけてくれるらしいのだが、そうした出力は
メモ帳じゃ読めないんだよなあ。ほんとunicodeわからん。