0

BCEL ライブラリを使用して、特定のメソッドからバイトコードを抽出します。そのために、BCEL Method クラスの getCode() 関数を使用します。

私がする時:

String code = metod.getCode().toString();
System.out.print(code);

lcd オペコードを見ると、次のようになります。

悪いエンコーディング

しかし、私はそれが欲しいです(lcdオペコード用):

ここに画像の説明を入力

JavaP を使用して逆コンパイルすると、結果は 2 番目の図のようになります。

問題はエンコーディングにあります。これは UTF-8 である必要があると思います。エンコーディングを変更する方法を他のトピックで調べていますが、これが問題であるかどうかはわかりません。

BCEL を使用して適切な文字列エンコーディングを行うにはどうすればよいですか?

編集:

最初の画像は Java コンソールからのものです。2番目の写真はdirtyJOE v1.5のものです

4

1 に答える 1

0

ここで本当に問題があるかどうかはわかりません... ...それでも、任意の文字列型を自由にUTF-8に簡単に変換できます。

例えば:

String s = "some text here";
byte[] b = s.getBytes("UTF-8");

参照: Java で文字列を UTF8 バイト配列との間で変換する方法

于 2011-12-24T20:14:15.557 に答える