IntelliJ - возможно ли скопировать вывод String.format или StringBuilder в буфер обмена? - PullRequest
0 голосов
/ 19 апреля 2019

Согласно следующему вопросу и ответу:

Как найти объединение результатов статической строки в Intellij Idea без запуска кода?

можно скопировать результат конкатенации строк из IntelliJ в буфер обмена.

Позвольте мне привести:

just put cursor on the string concatenation
Press alt + enter
Select "Copy String concatenation text into clipboard"
Paste result somewhere.

Однако я обнаружил, что это решение не работает в случае формата String.format.

Есть ли какой-нибудь обходной путь или плагин для IntelliJ, который позволяет выполнять эту операцию?

public class Main {

    public static void main(String[] args) {
        final String one = "want";
        final String two = "copy";
        final String three = "concatenated string";

        // I want to copy whole concatenated string
        String canBeCopiedIntoClipBoard = "I " + one + " to " + two + " whole " + three;
        String cannotCopyResultIntoClipBoard = String.format("I %s to %s whole %s", one, two, three);

        assert canBeCopiedIntoClipBoard.equals(cannotCopyResultIntoClipBoard);
        System.out.println(canBeCopiedIntoClipBoard);
    }
}

1 Ответ

0 голосов
/ 19 апреля 2019

Это не может быть сделано напрямую из IDE из-за того простого факта, что переменные, используемые при построении результата, могут поступать откуда угодно и могут быть неизвестны во время компиляции, а также из-за сложностей реализации любого внешнегокласс, который вы вызываете (представьте себе переменные среды, которые могут играть роль).

Вы можете сделать это , если , вы можете перейти к точке построения результата.

  • Поместите точку останова в строке 'CanCopyResultIntoClipBoard' и начните отладку,
  • Выберите часть, которая генерирует строку,
  • Откройте для панели «Evaluate» (Иногда Alt + F8 , всегда Выполнить Оценить выражение ... ),
  • Нажать ввод,
  • На панели результатов щелкните правой кнопкой мыши, Копировать значение .
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...