Перейти к содержимому

Как выделить цветом в java

  • автор:

Как изменить цвет выводимого в консоль текста? [дубликат]

Мне нужно написать консольное приложение, в котором через System.out.println(«Какой-то текст»); выводится текст. Возможно ли как-то в коде задать цвет текста ?

Отслеживать
22k 3 3 золотых знака 27 27 серебряных знаков 37 37 бронзовых знаков
задан 22 дек 2016 в 15:23
Andreew Akulov Andreew Akulov
157 1 1 золотой знак 2 2 серебряных знака 10 10 бронзовых знаков
1 сен 2019 в 0:24

1 ответ 1

Сортировка: Сброс на вариант по умолчанию

Да, это возможно (но работать будет не везде):

public class Main < public static final String ANSI_RESET = "\u001B[0m"; public static final String ANSI_BLACK = "\u001B[30m"; public static final String ANSI_RED = "\u001B[31m"; public static final String ANSI_GREEN = "\u001B[32m"; public static final String ANSI_YELLOW = "\u001B[33m"; public static final String ANSI_BLUE = "\u001B[34m"; public static final String ANSI_PURPLE = "\u001B[35m"; public static final String ANSI_CYAN = "\u001B[36m"; public static final String ANSI_WHITE = "\u001B[37m"; public static void main(String[] args) < System.out.println(ANSI_RED + "This text is red!" + ANSI_RESET); >> 

Отслеживать
ответ дан 22 дек 2016 в 15:30
22k 3 3 золотых знака 27 27 серебряных знаков 37 37 бронзовых знаков

  • java
  • io
    Важное на Мете
Связанные
Похожие

Дизайн сайта / логотип © 2024 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2024.1.8.3130

Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.

Как можно выводить в Java разным цветом сообщения в консоли от логгера в зависимости от типа сообщения?

Вывожу в программе логи в консоль через java.util.logging.Logger.

Выводимые строки обрабатываются этим форматером

package l2p; import java.io.PrintWriter; import java.io.StringWriter; import java.text.SimpleDateFormat; import java.util.Date; import java.util.logging.Formatter; import java.util.logging.LogRecord; public class ConsoleLogFormatter extends Formatter < private static final String CRLF = "\r\n"; private static final SimpleDateFormat tsformat = new SimpleDateFormat("HH:mm:ss.SSS "); private Date ts = new Date(); @Override public String format(LogRecord record) < StringBuffer output = new StringBuffer(); ts.setTime(record.getMillis()); output.append(tsformat.format(ts)); output.append(record.getMessage()); output.append(CRLF); if (record.getThrown() != null) try < StringWriter sw = new StringWriter(); PrintWriter pw = new PrintWriter(sw); record.getThrown().printStackTrace(pw); pw.close(); output.append(sw.toString()); output.append(CRLF); >catch (Exception ex) <> return output.toString(); > > 

И собственно говоря интересует вопрос — как можно задать цвет строкам в зависимости от типа сообщения — fine, info, warning и т.д.
Притом это должно работать как в консоли Windows, так и в консоли Linux.

Может кому встречались какие-то готовые классы на эту тему или хотя бы подскажите в каком направлении копать.

  • Вопрос задан более трёх лет назад
  • 21569 просмотров

3 комментария

Оценить 3 комментария

Как изменить цвет текста в java

Для изменения цвета текста при выводе в консоль можно использовать управляющие коды ANSI.

Управляющие коды ANSI также позволяют изменить цвет фона, шрифт и др.

К примеру приведенный ниже код выведет в консоль текст синим цветом на желтом фоне :

public class App  public static final String ANSI_RESET = "\u001B[0m"; public static final String ANSI_BLUE = "\u001B[34m"; public static final String ANSI_YELLOW_BACKGROUND = "\u001B[43m"; public static void main(String[] args)  String text = "Hello World!"; System.out.println(ANSI_YELLOW_BACKGROUND + ANSI_BLUE + text + ANSI_RESET); > > 

Как задать выделение цветом для imageview?

Как задать выделение цветом для imageview? К примеру для каждого imageview идет соответствующая картинка. Как сделать выделение всего imageview с желтым оттенком (как при нажатии на кнопку button)?

  • Вопрос задан более трёх лет назад
  • 308 просмотров

1 комментарий

Оценить 1 комментарий

Therapyx

случаем не это ? stackoverflow.com/questions/19500039/how-to-use-se.
Решения вопроса 0
Ответы на вопрос 1

Например задать селектор, или переопределить метод onTouch для вьюхи, там детектить нажатие на нее и вызывать что то типа этого

iv.getDrawable().setColorFilter(цвет,PorterDuff.Mode.SRC_ATOP); iv.invalidate();

затем детектить отпускание и вызывать

image.getDrawable().clearColorFilter(); image.invalidate();

чтоб снять выделение

Ответ написан более трёх лет назад
Нравится 1 2 комментария
newdancer @newdancer Автор вопроса

Надо попробовать! Фактически мне надо чтобы при определенном действии я мог подсветить таким образом игральную карту(imageview). Тем самым не изменяя картинку этой imageview

попробуйте как я написал, только цвет выделения изначально задавайте полупрозрачный
Ваш ответ на вопрос

Войдите, чтобы написать ответ

java

  • Java
  • +1 ещё

Как разрабатывать приложение Spring, чтобы каждый раз не деплоить его на сервер для отладки?

  • 1 подписчик
  • 5 часов назад
  • 57 просмотров

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *