Java: красочные сообщения system.out на консоли - PullRequest
8 голосов
/ 15 ноября 2010

Я бы хотел, чтобы моя Java-программа командной строки выводила цветные тексты в консоль Unix Я специально использую gnome-терминал в Ubuntu 10.4. Я могу получить цвета с чем-то вроде echo "\033[01;32m"Hello на терминале.

Как я могу вызвать это с помощью кода Java? Спасибо

Ответы [ 3 ]

7 голосов
/ 15 ноября 2010

Если вам не нужна совместимость с терминалами, просто замените echo на System.out.println( выше. Например,

System.out.println("\033[01;32mHello\n");
4 голосов
/ 15 ноября 2010

Цвет текста находится на уровне ОС, поэтому я думаю, что вы можете сделать это с помощью вызова JNI.

Попробуйте этот пример

Примечание: сделать Unix эквивалентомчто

ИЛИ

javacurses также полезно в вашем случае

ИЛИ

загадка загадки также полезно

3 голосов
/ 15 ноября 2010

Это поможет:

Process p = Runtime.getRuntime().exec("echo -e \"\\033[01;32m\"Could Not Add The Task!");

Затем перенаправьте inputStream в System.out следующим образом:

        BufferedReader stdInput = new BufferedReader(new 
             InputStreamReader(p.getInputStream()));

        while ((s = stdInput.readLine()) != null) {
            System.out.println(s);
        }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...