Настройки SQLPlus для генерации разделенного от вкладки файла данных

Инструкция ALOAD содержит числовой аргумент, который сообщает, какую локальную переменную она загружает. Как только мы получим это, мы посмотрим в methodnode.localVariables (что вы уже печатали на экране), чтобы найти правильный.

Итак, один из способов - сначала выяснить, какой класс представляет инструкции ALOAD. Вы можете выполнить поиск в Google, например, « aload extends abstractinsnnode site: asm.ow2.io », чтобы найти * InsnNode для использования. Ответ для ALOAD - VarInsnNode . Он, безусловно, содержит поле int var, в котором содержится номер локальной переменной, которую он загружает. Оно должно соответствовать полю int index в списке LocalVariableNode. Однако один и тот же индекс может быть повторно использован для различных целей в одном и том же методе, поэтому вам также необходимо убедиться, что ваша инструкция находится между инструкциями LabelNode, указанными в инструкциях LabelNode start и LabelNode end в LocalVariableNode. Самый простой способ сделать это - просто использовать BasicAnalyer, как рекомендовано @Holger в его комментарии к ответу @Antimony . Таким образом, вы получаете связанный объект Frame для вашего VarInsnNode и делаете frame.getStack(((VarInsnNode) abstractNode).var), чтобы получить описание переменной для инструкции ALOAD.

16
задан user19387 19 September 2008 в 23:14
поделиться

2 ответа

Проверьте документацию Oracle:

можно генерировать вкладку в Oracle при помощи значения ASCII вкладки 9 и функция chr:

select chr(9) from dual;
-4
ответ дан 30 November 2019 в 23:18
поделиться

Один конкретный сценарий, который я украл больше чем в одном случае, прибывает из потока AskTom на данные извлечения к плоскому файлу . Если мне был нужен быстрый и грязный плоский файл из SQL*Plus. Я был бы склонен предпочитать функцию DUMP_CSV, которую Tom отправил раньше что поток для любого вида продолжающегося процесса, все же.

3
ответ дан 30 November 2019 в 23:18
поделиться
Другие вопросы по тегам:

Похожие вопросы: