Строка (из байт-кодов) из Java BCEL отличается от Javap и других инструментов - PullRequest
0 голосов
/ 25 декабря 2011

Я использую библиотеку BCEL для извлечения байт-кода из определенного метода. Для этого я использую функцию getCode () из класса BCEL Method.

Когда я делаю:

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

Если вы посмотрите на код операции lcd, я получу это:

Bad encoding

но я хотел бы иметь это (для кода операции lcd):

enter image description here

Если я использую JavaP для декомпиляции, результатом будет второе изображение.

Проблема в кодировке, которая, я думаю, должна быть UTF-8. Я смотрю на другие темы, как изменить кодировку, но я не уверен, что это проблема.

Как получить хорошее кодирование строки с использованием BCEL?

EDIT:

Первое изображение с консоли Java. Вторая картина от грязного JOE v1.5

1 Ответ

0 голосов
/ 25 декабря 2011

Я не уверен, что у вас действительно есть проблема ... ... но, тем не менее, вы можете легко конвертировать ЛЮБОЙ тип строки в UTF-8 по желанию.

Например:

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

См. Также: Как преобразовать строки в байтовые массивы UTF8 и из них в Java

...