How to print color in console using System.out.println?












233















How can I print color in console? I want to show data in colors when the processor sends data and in different colors when it receives data.










share|improve this question





























    233















    How can I print color in console? I want to show data in colors when the processor sends data and in different colors when it receives data.










    share|improve this question



























      233












      233








      233


      135






      How can I print color in console? I want to show data in colors when the processor sends data and in different colors when it receives data.










      share|improve this question
















      How can I print color in console? I want to show data in colors when the processor sends data and in different colors when it receives data.







      java text colors






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Jul 24 '17 at 4:06









      CodingNinja

      1,2481724




      1,2481724










      asked Apr 23 '11 at 5:52









      Taranath DattaTaranath Datta

      1,172394




      1,172394
























          9 Answers
          9






          active

          oldest

          votes


















          453














          If your terminal supports it, you can use ANSI escape codes to use color in your output. It generally works for Unix shell prompts; however, it doesn't work for Windows Command Prompt (Although, it does work for Cygwin). For example, you could define constants like these for the colors:



          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";


          Then, you could reference those as necessary.



          For example, using the above constants, you could make the following red text output on supported terminals:



          System.out.println(ANSI_RED + "This text is red!" + ANSI_RESET);


          Update: You might want to check out the Jansi library. It provides an API and has support for Windows using JNI. I haven't tried it yet; however, it looks promising.



          Update 2: Also, if you wish to change the background color of the text to a different color, you could try the following as well:



          public static final String ANSI_BLACK_BACKGROUND = "u001B[40m";
          public static final String ANSI_RED_BACKGROUND = "u001B[41m";
          public static final String ANSI_GREEN_BACKGROUND = "u001B[42m";
          public static final String ANSI_YELLOW_BACKGROUND = "u001B[43m";
          public static final String ANSI_BLUE_BACKGROUND = "u001B[44m";
          public static final String ANSI_PURPLE_BACKGROUND = "u001B[45m";
          public static final String ANSI_CYAN_BACKGROUND = "u001B[46m";
          public static final String ANSI_WHITE_BACKGROUND = "u001B[47m";


          For instance:



          System.out.println(ANSI_GREEN_BACKGROUND + "This text has a green background but default text!" + ANSI_RESET);
          System.out.println(ANSI_RED + "This text has red text but a default background!" + ANSI_RESET);
          System.out.println(ANSI_GREEN_BACKGROUND + ANSI_RED + "This text has a green background and red text!" + ANSI_RESET);





          share|improve this answer


























          • @WhiteFang34 Can you please explain what is the use of RESET if its color is BLACK, at least in my console? Is it like a default or sth.?

            – Boro
            Apr 23 '11 at 8:31








          • 3





            @Boro: the reset code turns off all ANSI attributes set so far, which should return the console to its defaults. It's useful if you don't know the default color or are also using some of the other attributes like background color, font styles, etc.

            – WhiteFang34
            Apr 23 '11 at 8:38






          • 1





            jansi is really great! for those who develop in eclipse, i can reccomend this plugin: mihai-nita.net/2013/06/03/eclipse-plugin-ansi-in-console and nice piece of code to enable color if the code isn't being executed in console: if (System.console() == null) System.setProperty("jansi.passthrough", "true");

            – Danny Lo
            Apr 13 '14 at 19:51













          • @WhiteFang34 i am using windows and for some reason it is not working

            – Pankaj Nimgade
            Feb 5 '15 at 10:32













          • @PankajNimgade, read the answer again and you'll maybe notice this: however it doesn't work for Windows command prompt

            – Felix Edelmann
            Sep 2 '15 at 15:23





















          38














          I created a library called JCDP (Java Colored Debug Printer).



          For Linux it uses the ANSI escape codes that WhiteFang mentioned, but abstracts them using words instead of codes which is much more intuitive. It becomes as easy as:



          print("Hello World!", Attribute.BOLD, FColor.YELLOW, BColor.GREEN);


          For Windows it actually includes the JAnsi library but creates an abstraction layer over it, maintaining the intuitive and simple interface created for Linux.



          This library is licensed under the MIT License so feel free to use it.



          Have a look at JCDP's github repository.






          share|improve this answer

































            31














            Here are a list of colors in a Java class with public static fields



            Usage



            System.out.println(ConsoleColors.RED + "RED COLORED" +
            ConsoleColors.RESET + " NORMAL");



            Note
            Don't forget to use the RESET after printing as the effect will remain if it's not cleared






            public class ConsoleColors {
            // Reset
            public static final String RESET = "33[0m"; // Text Reset

            // Regular Colors
            public static final String BLACK = "33[0;30m"; // BLACK
            public static final String RED = "33[0;31m"; // RED
            public static final String GREEN = "33[0;32m"; // GREEN
            public static final String YELLOW = "33[0;33m"; // YELLOW
            public static final String BLUE = "33[0;34m"; // BLUE
            public static final String PURPLE = "33[0;35m"; // PURPLE
            public static final String CYAN = "33[0;36m"; // CYAN
            public static final String WHITE = "33[0;37m"; // WHITE

            // Bold
            public static final String BLACK_BOLD = "33[1;30m"; // BLACK
            public static final String RED_BOLD = "33[1;31m"; // RED
            public static final String GREEN_BOLD = "33[1;32m"; // GREEN
            public static final String YELLOW_BOLD = "33[1;33m"; // YELLOW
            public static final String BLUE_BOLD = "33[1;34m"; // BLUE
            public static final String PURPLE_BOLD = "33[1;35m"; // PURPLE
            public static final String CYAN_BOLD = "33[1;36m"; // CYAN
            public static final String WHITE_BOLD = "33[1;37m"; // WHITE

            // Underline
            public static final String BLACK_UNDERLINED = "33[4;30m"; // BLACK
            public static final String RED_UNDERLINED = "33[4;31m"; // RED
            public static final String GREEN_UNDERLINED = "33[4;32m"; // GREEN
            public static final String YELLOW_UNDERLINED = "33[4;33m"; // YELLOW
            public static final String BLUE_UNDERLINED = "33[4;34m"; // BLUE
            public static final String PURPLE_UNDERLINED = "33[4;35m"; // PURPLE
            public static final String CYAN_UNDERLINED = "33[4;36m"; // CYAN
            public static final String WHITE_UNDERLINED = "33[4;37m"; // WHITE

            // Background
            public static final String BLACK_BACKGROUND = "33[40m"; // BLACK
            public static final String RED_BACKGROUND = "33[41m"; // RED
            public static final String GREEN_BACKGROUND = "33[42m"; // GREEN
            public static final String YELLOW_BACKGROUND = "33[43m"; // YELLOW
            public static final String BLUE_BACKGROUND = "33[44m"; // BLUE
            public static final String PURPLE_BACKGROUND = "33[45m"; // PURPLE
            public static final String CYAN_BACKGROUND = "33[46m"; // CYAN
            public static final String WHITE_BACKGROUND = "33[47m"; // WHITE

            // High Intensity
            public static final String BLACK_BRIGHT = "33[0;90m"; // BLACK
            public static final String RED_BRIGHT = "33[0;91m"; // RED
            public static final String GREEN_BRIGHT = "33[0;92m"; // GREEN
            public static final String YELLOW_BRIGHT = "33[0;93m"; // YELLOW
            public static final String BLUE_BRIGHT = "33[0;94m"; // BLUE
            public static final String PURPLE_BRIGHT = "33[0;95m"; // PURPLE
            public static final String CYAN_BRIGHT = "33[0;96m"; // CYAN
            public static final String WHITE_BRIGHT = "33[0;97m"; // WHITE

            // Bold High Intensity
            public static final String BLACK_BOLD_BRIGHT = "33[1;90m"; // BLACK
            public static final String RED_BOLD_BRIGHT = "33[1;91m"; // RED
            public static final String GREEN_BOLD_BRIGHT = "33[1;92m"; // GREEN
            public static final String YELLOW_BOLD_BRIGHT = "33[1;93m";// YELLOW
            public static final String BLUE_BOLD_BRIGHT = "33[1;94m"; // BLUE
            public static final String PURPLE_BOLD_BRIGHT = "33[1;95m";// PURPLE
            public static final String CYAN_BOLD_BRIGHT = "33[1;96m"; // CYAN
            public static final String WHITE_BOLD_BRIGHT = "33[1;97m"; // WHITE

            // High Intensity backgrounds
            public static final String BLACK_BACKGROUND_BRIGHT = "33[0;100m";// BLACK
            public static final String RED_BACKGROUND_BRIGHT = "33[0;101m";// RED
            public static final String GREEN_BACKGROUND_BRIGHT = "33[0;102m";// GREEN
            public static final String YELLOW_BACKGROUND_BRIGHT = "33[0;103m";// YELLOW
            public static final String BLUE_BACKGROUND_BRIGHT = "33[0;104m";// BLUE
            public static final String PURPLE_BACKGROUND_BRIGHT = "33[0;105m"; // PURPLE
            public static final String CYAN_BACKGROUND_BRIGHT = "33[0;106m"; // CYAN
            public static final String WHITE_BACKGROUND_BRIGHT = "33[0;107m"; // WHITE
            }





            share|improve this answer































              14














              A fairly portable way of doing it is with the raw escape sequences. See http://en.wikipedia.org/wiki/ANSI_escape_code



              [edited for user9999999 on 2017-02-20]



              Java doesn't "handle the codes", that's true, but Java outputs what you told it to output. it's not Java's fault that the Windows console treats ESC (chr(27)) as just another glyph (←).



              you made me boot into Windows. you owe me, bro






              share|improve this answer


























              • which doesn't work because the Java IO layer does not convert those to colors. System.out.println((char)27 + "[31;1mERROR" + (char)27 + "[0m" only yields "[31;1mERROR[0m" when run from a windows cmd.com as an executable .jar

                – simpleuser
                Feb 12 '17 at 6:03











              • the question wasn't tagged windows. the Windows console was never ANSI-compliant that I remember.

                – jcomeau_ictx
                Feb 12 '17 at 14:52











              • but the issue is that java isn't handling the codes, regardless of cmd.com's support

                – simpleuser
                Feb 20 '17 at 17:31






              • 2





                see edited answer. Java is doing exactly as it's told. the problem is the non-ANSI-compliant console.

                – jcomeau_ictx
                Feb 21 '17 at 6:32











              • I have same problem

                – sgrillon
                Mar 15 '18 at 14:58



















              11














              public enum Color {
              //颜色结尾字符串,重置颜色的
              RESET("33[0m"),

              // Regular Colors 普通颜色,不带加粗,背景色等
              BLACK("33[0;30m"), // BLACK
              RED("33[0;31m"), // RED
              GREEN("33[0;32m"), // GREEN
              YELLOW("33[0;33m"), // YELLOW
              BLUE("33[0;34m"), // BLUE
              MAGENTA("33[0;35m"), // MAGENTA
              CYAN("33[0;36m"), // CYAN
              WHITE("33[0;37m"), // WHITE

              // Bold
              BLACK_BOLD("33[1;30m"), // BLACK
              RED_BOLD("33[1;31m"), // RED
              GREEN_BOLD("33[1;32m"), // GREEN
              YELLOW_BOLD("33[1;33m"), // YELLOW
              BLUE_BOLD("33[1;34m"), // BLUE
              MAGENTA_BOLD("33[1;35m"), // MAGENTA
              CYAN_BOLD("33[1;36m"), // CYAN
              WHITE_BOLD("33[1;37m"), // WHITE

              // Underline
              BLACK_UNDERLINED("33[4;30m"), // BLACK
              RED_UNDERLINED("33[4;31m"), // RED
              GREEN_UNDERLINED("33[4;32m"), // GREEN
              YELLOW_UNDERLINED("33[4;33m"), // YELLOW
              BLUE_UNDERLINED("33[4;34m"), // BLUE
              MAGENTA_UNDERLINED("33[4;35m"), // MAGENTA
              CYAN_UNDERLINED("33[4;36m"), // CYAN
              WHITE_UNDERLINED("33[4;37m"), // WHITE

              // Background
              BLACK_BACKGROUND("33[40m"), // BLACK
              RED_BACKGROUND("33[41m"), // RED
              GREEN_BACKGROUND("33[42m"), // GREEN
              YELLOW_BACKGROUND("33[43m"), // YELLOW
              BLUE_BACKGROUND("33[44m"), // BLUE
              MAGENTA_BACKGROUND("33[45m"), // MAGENTA
              CYAN_BACKGROUND("33[46m"), // CYAN
              WHITE_BACKGROUND("33[47m"), // WHITE

              // High Intensity
              BLACK_BRIGHT("33[0;90m"), // BLACK
              RED_BRIGHT("33[0;91m"), // RED
              GREEN_BRIGHT("33[0;92m"), // GREEN
              YELLOW_BRIGHT("33[0;93m"), // YELLOW
              BLUE_BRIGHT("33[0;94m"), // BLUE
              MAGENTA_BRIGHT("33[0;95m"), // MAGENTA
              CYAN_BRIGHT("33[0;96m"), // CYAN
              WHITE_BRIGHT("33[0;97m"), // WHITE

              // Bold High Intensity
              BLACK_BOLD_BRIGHT("33[1;90m"), // BLACK
              RED_BOLD_BRIGHT("33[1;91m"), // RED
              GREEN_BOLD_BRIGHT("33[1;92m"), // GREEN
              YELLOW_BOLD_BRIGHT("33[1;93m"), // YELLOW
              BLUE_BOLD_BRIGHT("33[1;94m"), // BLUE
              MAGENTA_BOLD_BRIGHT("33[1;95m"), // MAGENTA
              CYAN_BOLD_BRIGHT("33[1;96m"), // CYAN
              WHITE_BOLD_BRIGHT("33[1;97m"), // WHITE

              // High Intensity backgrounds
              BLACK_BACKGROUND_BRIGHT("33[0;100m"), // BLACK
              RED_BACKGROUND_BRIGHT("33[0;101m"), // RED
              GREEN_BACKGROUND_BRIGHT("33[0;102m"), // GREEN
              YELLOW_BACKGROUND_BRIGHT("33[0;103m"), // YELLOW
              BLUE_BACKGROUND_BRIGHT("33[0;104m"), // BLUE
              MAGENTA_BACKGROUND_BRIGHT("33[0;105m"), // MAGENTA
              CYAN_BACKGROUND_BRIGHT("33[0;106m"), // CYAN
              WHITE_BACKGROUND_BRIGHT("33[0;107m"); // WHITE

              private final String code;

              Color(String code) {
              this.code = code;
              }

              @Override
              public String toString() {
              return code;
              }
              }



              System.out.print(Color.BLACK_BOLD);
              System.out.println("111111111aaaaaaaaaaaaaaaa==============");
              System.out.print(Color.RESET);

              System.out.print(Color.BLUE_BACKGROUND);
              System.out.print(Color.YELLOW); //设置前景色 为YELLOW
              System.out.println("111111111aaaaaaaaaaaaaaaa==============马哥私房菜");
              System.out.println("111111111aaaaaaaaaaaaaaaa==============马哥私房菜");
              System.out.println("111111111aaaaaaaaaaaaaaaa==============马哥私房菜");
              System.out.println("111111111aaaaaaaaaaaaaaaa==============马哥私房菜");
              System.out.print(Color.RESET);





              share|improve this answer
























              • Excellent enum !

                – Amr Lotfy
                Aug 28 '18 at 23:54



















              6














              You could do this using ANSI escape sequences. I've actually put together this class in Java for anyone that would like a simple workaround for this. It allows for the use of custom color codes in text.



              https://gist.github.com/nathan-fiscaletti/9dc252d30b51df7d710a



              Example Use:



              Color code format WITH background color -> :foreground,background:



              Color code format WITHOUT background color -> :foreground,N:



              Reset Color format -> [RC]



              String ansiColoredString = ColorCodes.parseColors("Hello, This :blue,n:is[RC] a :red,white:response[RC].");


              or



              String ansiColoredString = ColorCodes.RED + "Hello" + ColorCodes.WHITE + ", This is a " + ColorCodes.BLUE + "test";





              share|improve this answer

































                5














                If anyone is looking for a quick solution, feel free to use the following helper class :)



                public class Log {

                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";

                //info
                public static void i(String className, String message) {
                System.out.println(ANSI_GREEN + className + " : " + message + ANSI_RESET);
                }

                //error
                public static void e(String className, String message) {
                System.out.println(ANSI_RED + className + " : " + message + ANSI_RESET);
                }

                //debug
                public static void d(String className, String message) {
                System.out.println(ANSI_BLUE + className + " : " + message + ANSI_RESET);
                }

                //warning
                public static void w(String className, String message) {
                System.out.println(ANSI_YELLOW + className + " : " + message + ANSI_RESET);
                }

                }


                USAGE:



                Log.i(TAG,"This is an info message");

                Log.e(TAG,"This is an error message");

                Log.w(TAG,"This is a warning message");

                Log.d(TAG,"This is a debug message");


                Thanks @whiteFang34 for the ANSI codes.






                share|improve this answer































                  0














                  If you use Kotlin (which works seamlessly with Java), you can make such an enum:



                  enum class AnsiColor(private val colorNumber: Byte) {
                  BLACK(0), RED(1), GREEN(2), YELLOW(3), BLUE(4), MAGENTA(5), CYAN(6), WHITE(7);

                  companion object {
                  private const val prefix = "u001B"
                  const val RESET = "$prefix[0m"
                  private val isCompatible = "win" !in System.getProperty("os.name").toLowerCase()
                  }

                  val regular get() = if (isCompatible) "$prefix[0;3${colorNumber}m" else ""
                  val bold get() = if (isCompatible) "$prefix[1;3${colorNumber}m" else ""
                  val underline get() = if (isCompatible) "$prefix[4;3${colorNumber}m" else ""
                  val background get() = if (isCompatible) "$prefix[4${colorNumber}m" else ""
                  val highIntensity get() = if (isCompatible) "$prefix[0;9${colorNumber}m" else ""
                  val boldHighIntensity get() = if (isCompatible) "$prefix[1;9${colorNumber}m" else ""
                  val backgroundHighIntensity get() = if (isCompatible) "$prefix[0;10${colorNumber}m" else ""
                  }


                  And then use is as such: (code below showcases the different styles for all colors)



                  val sampleText = "This is a sample text"
                  enumValues<AnsiColor>().forEach { ansiColor ->
                  println("${ansiColor.regular}$sampleText${AnsiColor.RESET}")
                  println("${ansiColor.bold}$sampleText${AnsiColor.RESET}")
                  println("${ansiColor.underline}$sampleText${AnsiColor.RESET}")
                  println("${ansiColor.background}$sampleText${AnsiColor.RESET}")
                  println("${ansiColor.highIntensity}$sampleText${AnsiColor.RESET}")
                  println("${ansiColor.boldHighIntensity}$sampleText${AnsiColor.RESET}")
                  println("${ansiColor.backgroundHighIntensity}$sampleText${AnsiColor.RESET}")
                  }


                  If running on Windows where these ANSI codes are not supported, the isCompatible check avoids issues by replacing the codes with empty string.






                  share|improve this answer































                    0














                    The best way to color console text is to use ANSI escape codes. In addition of text color, ANSI escape codes allows background color, decorations and more.



                    Unix



                    If you use springboot, there is a specific enum for text coloring: org.springframework.boot.ansi.AnsiColor



                    Jansi library is a bit more advanced (can use all the ANSI escape codes fonctions), provides an API and has a support for Windows using JNA.



                    Otherwise, you can manually define your own color, as shown is other responses.



                    Windows 10



                    Windows 10 (since build 10.0.10586 - nov. 2015) supports ANSI escape codes (MSDN documentation) but it's not enabled by default. To enable it:




                    • With SetConsoleMode API, use ENABLE_VIRTUAL_TERMINAL_PROCESSING (0x0400) flag. Jansi uses this option.

                    • If SetConsoleMode API is not used, it is possible to change the global registry key HKEY_CURRENT_USERConsoleVirtualTerminalLevel by creating a dword and set it to 0 or 1 for ANSI processing:
                      "VirtualTerminalLevel"=dword:00000001


                    Before Windows 10



                    Windows console does not support ANSI colors. But it's possible to use console which does.






                    share|improve this answer































                      9 Answers
                      9






                      active

                      oldest

                      votes








                      9 Answers
                      9






                      active

                      oldest

                      votes









                      active

                      oldest

                      votes






                      active

                      oldest

                      votes









                      453














                      If your terminal supports it, you can use ANSI escape codes to use color in your output. It generally works for Unix shell prompts; however, it doesn't work for Windows Command Prompt (Although, it does work for Cygwin). For example, you could define constants like these for the colors:



                      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";


                      Then, you could reference those as necessary.



                      For example, using the above constants, you could make the following red text output on supported terminals:



                      System.out.println(ANSI_RED + "This text is red!" + ANSI_RESET);


                      Update: You might want to check out the Jansi library. It provides an API and has support for Windows using JNI. I haven't tried it yet; however, it looks promising.



                      Update 2: Also, if you wish to change the background color of the text to a different color, you could try the following as well:



                      public static final String ANSI_BLACK_BACKGROUND = "u001B[40m";
                      public static final String ANSI_RED_BACKGROUND = "u001B[41m";
                      public static final String ANSI_GREEN_BACKGROUND = "u001B[42m";
                      public static final String ANSI_YELLOW_BACKGROUND = "u001B[43m";
                      public static final String ANSI_BLUE_BACKGROUND = "u001B[44m";
                      public static final String ANSI_PURPLE_BACKGROUND = "u001B[45m";
                      public static final String ANSI_CYAN_BACKGROUND = "u001B[46m";
                      public static final String ANSI_WHITE_BACKGROUND = "u001B[47m";


                      For instance:



                      System.out.println(ANSI_GREEN_BACKGROUND + "This text has a green background but default text!" + ANSI_RESET);
                      System.out.println(ANSI_RED + "This text has red text but a default background!" + ANSI_RESET);
                      System.out.println(ANSI_GREEN_BACKGROUND + ANSI_RED + "This text has a green background and red text!" + ANSI_RESET);





                      share|improve this answer


























                      • @WhiteFang34 Can you please explain what is the use of RESET if its color is BLACK, at least in my console? Is it like a default or sth.?

                        – Boro
                        Apr 23 '11 at 8:31








                      • 3





                        @Boro: the reset code turns off all ANSI attributes set so far, which should return the console to its defaults. It's useful if you don't know the default color or are also using some of the other attributes like background color, font styles, etc.

                        – WhiteFang34
                        Apr 23 '11 at 8:38






                      • 1





                        jansi is really great! for those who develop in eclipse, i can reccomend this plugin: mihai-nita.net/2013/06/03/eclipse-plugin-ansi-in-console and nice piece of code to enable color if the code isn't being executed in console: if (System.console() == null) System.setProperty("jansi.passthrough", "true");

                        – Danny Lo
                        Apr 13 '14 at 19:51













                      • @WhiteFang34 i am using windows and for some reason it is not working

                        – Pankaj Nimgade
                        Feb 5 '15 at 10:32













                      • @PankajNimgade, read the answer again and you'll maybe notice this: however it doesn't work for Windows command prompt

                        – Felix Edelmann
                        Sep 2 '15 at 15:23


















                      453














                      If your terminal supports it, you can use ANSI escape codes to use color in your output. It generally works for Unix shell prompts; however, it doesn't work for Windows Command Prompt (Although, it does work for Cygwin). For example, you could define constants like these for the colors:



                      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";


                      Then, you could reference those as necessary.



                      For example, using the above constants, you could make the following red text output on supported terminals:



                      System.out.println(ANSI_RED + "This text is red!" + ANSI_RESET);


                      Update: You might want to check out the Jansi library. It provides an API and has support for Windows using JNI. I haven't tried it yet; however, it looks promising.



                      Update 2: Also, if you wish to change the background color of the text to a different color, you could try the following as well:



                      public static final String ANSI_BLACK_BACKGROUND = "u001B[40m";
                      public static final String ANSI_RED_BACKGROUND = "u001B[41m";
                      public static final String ANSI_GREEN_BACKGROUND = "u001B[42m";
                      public static final String ANSI_YELLOW_BACKGROUND = "u001B[43m";
                      public static final String ANSI_BLUE_BACKGROUND = "u001B[44m";
                      public static final String ANSI_PURPLE_BACKGROUND = "u001B[45m";
                      public static final String ANSI_CYAN_BACKGROUND = "u001B[46m";
                      public static final String ANSI_WHITE_BACKGROUND = "u001B[47m";


                      For instance:



                      System.out.println(ANSI_GREEN_BACKGROUND + "This text has a green background but default text!" + ANSI_RESET);
                      System.out.println(ANSI_RED + "This text has red text but a default background!" + ANSI_RESET);
                      System.out.println(ANSI_GREEN_BACKGROUND + ANSI_RED + "This text has a green background and red text!" + ANSI_RESET);





                      share|improve this answer


























                      • @WhiteFang34 Can you please explain what is the use of RESET if its color is BLACK, at least in my console? Is it like a default or sth.?

                        – Boro
                        Apr 23 '11 at 8:31








                      • 3





                        @Boro: the reset code turns off all ANSI attributes set so far, which should return the console to its defaults. It's useful if you don't know the default color or are also using some of the other attributes like background color, font styles, etc.

                        – WhiteFang34
                        Apr 23 '11 at 8:38






                      • 1





                        jansi is really great! for those who develop in eclipse, i can reccomend this plugin: mihai-nita.net/2013/06/03/eclipse-plugin-ansi-in-console and nice piece of code to enable color if the code isn't being executed in console: if (System.console() == null) System.setProperty("jansi.passthrough", "true");

                        – Danny Lo
                        Apr 13 '14 at 19:51













                      • @WhiteFang34 i am using windows and for some reason it is not working

                        – Pankaj Nimgade
                        Feb 5 '15 at 10:32













                      • @PankajNimgade, read the answer again and you'll maybe notice this: however it doesn't work for Windows command prompt

                        – Felix Edelmann
                        Sep 2 '15 at 15:23
















                      453












                      453








                      453







                      If your terminal supports it, you can use ANSI escape codes to use color in your output. It generally works for Unix shell prompts; however, it doesn't work for Windows Command Prompt (Although, it does work for Cygwin). For example, you could define constants like these for the colors:



                      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";


                      Then, you could reference those as necessary.



                      For example, using the above constants, you could make the following red text output on supported terminals:



                      System.out.println(ANSI_RED + "This text is red!" + ANSI_RESET);


                      Update: You might want to check out the Jansi library. It provides an API and has support for Windows using JNI. I haven't tried it yet; however, it looks promising.



                      Update 2: Also, if you wish to change the background color of the text to a different color, you could try the following as well:



                      public static final String ANSI_BLACK_BACKGROUND = "u001B[40m";
                      public static final String ANSI_RED_BACKGROUND = "u001B[41m";
                      public static final String ANSI_GREEN_BACKGROUND = "u001B[42m";
                      public static final String ANSI_YELLOW_BACKGROUND = "u001B[43m";
                      public static final String ANSI_BLUE_BACKGROUND = "u001B[44m";
                      public static final String ANSI_PURPLE_BACKGROUND = "u001B[45m";
                      public static final String ANSI_CYAN_BACKGROUND = "u001B[46m";
                      public static final String ANSI_WHITE_BACKGROUND = "u001B[47m";


                      For instance:



                      System.out.println(ANSI_GREEN_BACKGROUND + "This text has a green background but default text!" + ANSI_RESET);
                      System.out.println(ANSI_RED + "This text has red text but a default background!" + ANSI_RESET);
                      System.out.println(ANSI_GREEN_BACKGROUND + ANSI_RED + "This text has a green background and red text!" + ANSI_RESET);





                      share|improve this answer















                      If your terminal supports it, you can use ANSI escape codes to use color in your output. It generally works for Unix shell prompts; however, it doesn't work for Windows Command Prompt (Although, it does work for Cygwin). For example, you could define constants like these for the colors:



                      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";


                      Then, you could reference those as necessary.



                      For example, using the above constants, you could make the following red text output on supported terminals:



                      System.out.println(ANSI_RED + "This text is red!" + ANSI_RESET);


                      Update: You might want to check out the Jansi library. It provides an API and has support for Windows using JNI. I haven't tried it yet; however, it looks promising.



                      Update 2: Also, if you wish to change the background color of the text to a different color, you could try the following as well:



                      public static final String ANSI_BLACK_BACKGROUND = "u001B[40m";
                      public static final String ANSI_RED_BACKGROUND = "u001B[41m";
                      public static final String ANSI_GREEN_BACKGROUND = "u001B[42m";
                      public static final String ANSI_YELLOW_BACKGROUND = "u001B[43m";
                      public static final String ANSI_BLUE_BACKGROUND = "u001B[44m";
                      public static final String ANSI_PURPLE_BACKGROUND = "u001B[45m";
                      public static final String ANSI_CYAN_BACKGROUND = "u001B[46m";
                      public static final String ANSI_WHITE_BACKGROUND = "u001B[47m";


                      For instance:



                      System.out.println(ANSI_GREEN_BACKGROUND + "This text has a green background but default text!" + ANSI_RESET);
                      System.out.println(ANSI_RED + "This text has red text but a default background!" + ANSI_RESET);
                      System.out.println(ANSI_GREEN_BACKGROUND + ANSI_RED + "This text has a green background and red text!" + ANSI_RESET);






                      share|improve this answer














                      share|improve this answer



                      share|improve this answer








                      edited Nov 3 '17 at 13:43









                      SergeyB

                      5,43612542




                      5,43612542










                      answered Apr 23 '11 at 5:56









                      WhiteFang34WhiteFang34

                      58.5k1689106




                      58.5k1689106













                      • @WhiteFang34 Can you please explain what is the use of RESET if its color is BLACK, at least in my console? Is it like a default or sth.?

                        – Boro
                        Apr 23 '11 at 8:31








                      • 3





                        @Boro: the reset code turns off all ANSI attributes set so far, which should return the console to its defaults. It's useful if you don't know the default color or are also using some of the other attributes like background color, font styles, etc.

                        – WhiteFang34
                        Apr 23 '11 at 8:38






                      • 1





                        jansi is really great! for those who develop in eclipse, i can reccomend this plugin: mihai-nita.net/2013/06/03/eclipse-plugin-ansi-in-console and nice piece of code to enable color if the code isn't being executed in console: if (System.console() == null) System.setProperty("jansi.passthrough", "true");

                        – Danny Lo
                        Apr 13 '14 at 19:51













                      • @WhiteFang34 i am using windows and for some reason it is not working

                        – Pankaj Nimgade
                        Feb 5 '15 at 10:32













                      • @PankajNimgade, read the answer again and you'll maybe notice this: however it doesn't work for Windows command prompt

                        – Felix Edelmann
                        Sep 2 '15 at 15:23





















                      • @WhiteFang34 Can you please explain what is the use of RESET if its color is BLACK, at least in my console? Is it like a default or sth.?

                        – Boro
                        Apr 23 '11 at 8:31








                      • 3





                        @Boro: the reset code turns off all ANSI attributes set so far, which should return the console to its defaults. It's useful if you don't know the default color or are also using some of the other attributes like background color, font styles, etc.

                        – WhiteFang34
                        Apr 23 '11 at 8:38






                      • 1





                        jansi is really great! for those who develop in eclipse, i can reccomend this plugin: mihai-nita.net/2013/06/03/eclipse-plugin-ansi-in-console and nice piece of code to enable color if the code isn't being executed in console: if (System.console() == null) System.setProperty("jansi.passthrough", "true");

                        – Danny Lo
                        Apr 13 '14 at 19:51













                      • @WhiteFang34 i am using windows and for some reason it is not working

                        – Pankaj Nimgade
                        Feb 5 '15 at 10:32













                      • @PankajNimgade, read the answer again and you'll maybe notice this: however it doesn't work for Windows command prompt

                        – Felix Edelmann
                        Sep 2 '15 at 15:23



















                      @WhiteFang34 Can you please explain what is the use of RESET if its color is BLACK, at least in my console? Is it like a default or sth.?

                      – Boro
                      Apr 23 '11 at 8:31







                      @WhiteFang34 Can you please explain what is the use of RESET if its color is BLACK, at least in my console? Is it like a default or sth.?

                      – Boro
                      Apr 23 '11 at 8:31






                      3




                      3





                      @Boro: the reset code turns off all ANSI attributes set so far, which should return the console to its defaults. It's useful if you don't know the default color or are also using some of the other attributes like background color, font styles, etc.

                      – WhiteFang34
                      Apr 23 '11 at 8:38





                      @Boro: the reset code turns off all ANSI attributes set so far, which should return the console to its defaults. It's useful if you don't know the default color or are also using some of the other attributes like background color, font styles, etc.

                      – WhiteFang34
                      Apr 23 '11 at 8:38




                      1




                      1





                      jansi is really great! for those who develop in eclipse, i can reccomend this plugin: mihai-nita.net/2013/06/03/eclipse-plugin-ansi-in-console and nice piece of code to enable color if the code isn't being executed in console: if (System.console() == null) System.setProperty("jansi.passthrough", "true");

                      – Danny Lo
                      Apr 13 '14 at 19:51







                      jansi is really great! for those who develop in eclipse, i can reccomend this plugin: mihai-nita.net/2013/06/03/eclipse-plugin-ansi-in-console and nice piece of code to enable color if the code isn't being executed in console: if (System.console() == null) System.setProperty("jansi.passthrough", "true");

                      – Danny Lo
                      Apr 13 '14 at 19:51















                      @WhiteFang34 i am using windows and for some reason it is not working

                      – Pankaj Nimgade
                      Feb 5 '15 at 10:32







                      @WhiteFang34 i am using windows and for some reason it is not working

                      – Pankaj Nimgade
                      Feb 5 '15 at 10:32















                      @PankajNimgade, read the answer again and you'll maybe notice this: however it doesn't work for Windows command prompt

                      – Felix Edelmann
                      Sep 2 '15 at 15:23







                      @PankajNimgade, read the answer again and you'll maybe notice this: however it doesn't work for Windows command prompt

                      – Felix Edelmann
                      Sep 2 '15 at 15:23















                      38














                      I created a library called JCDP (Java Colored Debug Printer).



                      For Linux it uses the ANSI escape codes that WhiteFang mentioned, but abstracts them using words instead of codes which is much more intuitive. It becomes as easy as:



                      print("Hello World!", Attribute.BOLD, FColor.YELLOW, BColor.GREEN);


                      For Windows it actually includes the JAnsi library but creates an abstraction layer over it, maintaining the intuitive and simple interface created for Linux.



                      This library is licensed under the MIT License so feel free to use it.



                      Have a look at JCDP's github repository.






                      share|improve this answer






























                        38














                        I created a library called JCDP (Java Colored Debug Printer).



                        For Linux it uses the ANSI escape codes that WhiteFang mentioned, but abstracts them using words instead of codes which is much more intuitive. It becomes as easy as:



                        print("Hello World!", Attribute.BOLD, FColor.YELLOW, BColor.GREEN);


                        For Windows it actually includes the JAnsi library but creates an abstraction layer over it, maintaining the intuitive and simple interface created for Linux.



                        This library is licensed under the MIT License so feel free to use it.



                        Have a look at JCDP's github repository.






                        share|improve this answer




























                          38












                          38








                          38







                          I created a library called JCDP (Java Colored Debug Printer).



                          For Linux it uses the ANSI escape codes that WhiteFang mentioned, but abstracts them using words instead of codes which is much more intuitive. It becomes as easy as:



                          print("Hello World!", Attribute.BOLD, FColor.YELLOW, BColor.GREEN);


                          For Windows it actually includes the JAnsi library but creates an abstraction layer over it, maintaining the intuitive and simple interface created for Linux.



                          This library is licensed under the MIT License so feel free to use it.



                          Have a look at JCDP's github repository.






                          share|improve this answer















                          I created a library called JCDP (Java Colored Debug Printer).



                          For Linux it uses the ANSI escape codes that WhiteFang mentioned, but abstracts them using words instead of codes which is much more intuitive. It becomes as easy as:



                          print("Hello World!", Attribute.BOLD, FColor.YELLOW, BColor.GREEN);


                          For Windows it actually includes the JAnsi library but creates an abstraction layer over it, maintaining the intuitive and simple interface created for Linux.



                          This library is licensed under the MIT License so feel free to use it.



                          Have a look at JCDP's github repository.







                          share|improve this answer














                          share|improve this answer



                          share|improve this answer








                          edited Jul 11 '16 at 9:07

























                          answered Aug 5 '11 at 14:03









                          dialexdialex

                          1,39132660




                          1,39132660























                              31














                              Here are a list of colors in a Java class with public static fields



                              Usage



                              System.out.println(ConsoleColors.RED + "RED COLORED" +
                              ConsoleColors.RESET + " NORMAL");



                              Note
                              Don't forget to use the RESET after printing as the effect will remain if it's not cleared






                              public class ConsoleColors {
                              // Reset
                              public static final String RESET = "33[0m"; // Text Reset

                              // Regular Colors
                              public static final String BLACK = "33[0;30m"; // BLACK
                              public static final String RED = "33[0;31m"; // RED
                              public static final String GREEN = "33[0;32m"; // GREEN
                              public static final String YELLOW = "33[0;33m"; // YELLOW
                              public static final String BLUE = "33[0;34m"; // BLUE
                              public static final String PURPLE = "33[0;35m"; // PURPLE
                              public static final String CYAN = "33[0;36m"; // CYAN
                              public static final String WHITE = "33[0;37m"; // WHITE

                              // Bold
                              public static final String BLACK_BOLD = "33[1;30m"; // BLACK
                              public static final String RED_BOLD = "33[1;31m"; // RED
                              public static final String GREEN_BOLD = "33[1;32m"; // GREEN
                              public static final String YELLOW_BOLD = "33[1;33m"; // YELLOW
                              public static final String BLUE_BOLD = "33[1;34m"; // BLUE
                              public static final String PURPLE_BOLD = "33[1;35m"; // PURPLE
                              public static final String CYAN_BOLD = "33[1;36m"; // CYAN
                              public static final String WHITE_BOLD = "33[1;37m"; // WHITE

                              // Underline
                              public static final String BLACK_UNDERLINED = "33[4;30m"; // BLACK
                              public static final String RED_UNDERLINED = "33[4;31m"; // RED
                              public static final String GREEN_UNDERLINED = "33[4;32m"; // GREEN
                              public static final String YELLOW_UNDERLINED = "33[4;33m"; // YELLOW
                              public static final String BLUE_UNDERLINED = "33[4;34m"; // BLUE
                              public static final String PURPLE_UNDERLINED = "33[4;35m"; // PURPLE
                              public static final String CYAN_UNDERLINED = "33[4;36m"; // CYAN
                              public static final String WHITE_UNDERLINED = "33[4;37m"; // WHITE

                              // Background
                              public static final String BLACK_BACKGROUND = "33[40m"; // BLACK
                              public static final String RED_BACKGROUND = "33[41m"; // RED
                              public static final String GREEN_BACKGROUND = "33[42m"; // GREEN
                              public static final String YELLOW_BACKGROUND = "33[43m"; // YELLOW
                              public static final String BLUE_BACKGROUND = "33[44m"; // BLUE
                              public static final String PURPLE_BACKGROUND = "33[45m"; // PURPLE
                              public static final String CYAN_BACKGROUND = "33[46m"; // CYAN
                              public static final String WHITE_BACKGROUND = "33[47m"; // WHITE

                              // High Intensity
                              public static final String BLACK_BRIGHT = "33[0;90m"; // BLACK
                              public static final String RED_BRIGHT = "33[0;91m"; // RED
                              public static final String GREEN_BRIGHT = "33[0;92m"; // GREEN
                              public static final String YELLOW_BRIGHT = "33[0;93m"; // YELLOW
                              public static final String BLUE_BRIGHT = "33[0;94m"; // BLUE
                              public static final String PURPLE_BRIGHT = "33[0;95m"; // PURPLE
                              public static final String CYAN_BRIGHT = "33[0;96m"; // CYAN
                              public static final String WHITE_BRIGHT = "33[0;97m"; // WHITE

                              // Bold High Intensity
                              public static final String BLACK_BOLD_BRIGHT = "33[1;90m"; // BLACK
                              public static final String RED_BOLD_BRIGHT = "33[1;91m"; // RED
                              public static final String GREEN_BOLD_BRIGHT = "33[1;92m"; // GREEN
                              public static final String YELLOW_BOLD_BRIGHT = "33[1;93m";// YELLOW
                              public static final String BLUE_BOLD_BRIGHT = "33[1;94m"; // BLUE
                              public static final String PURPLE_BOLD_BRIGHT = "33[1;95m";// PURPLE
                              public static final String CYAN_BOLD_BRIGHT = "33[1;96m"; // CYAN
                              public static final String WHITE_BOLD_BRIGHT = "33[1;97m"; // WHITE

                              // High Intensity backgrounds
                              public static final String BLACK_BACKGROUND_BRIGHT = "33[0;100m";// BLACK
                              public static final String RED_BACKGROUND_BRIGHT = "33[0;101m";// RED
                              public static final String GREEN_BACKGROUND_BRIGHT = "33[0;102m";// GREEN
                              public static final String YELLOW_BACKGROUND_BRIGHT = "33[0;103m";// YELLOW
                              public static final String BLUE_BACKGROUND_BRIGHT = "33[0;104m";// BLUE
                              public static final String PURPLE_BACKGROUND_BRIGHT = "33[0;105m"; // PURPLE
                              public static final String CYAN_BACKGROUND_BRIGHT = "33[0;106m"; // CYAN
                              public static final String WHITE_BACKGROUND_BRIGHT = "33[0;107m"; // WHITE
                              }





                              share|improve this answer




























                                31














                                Here are a list of colors in a Java class with public static fields



                                Usage



                                System.out.println(ConsoleColors.RED + "RED COLORED" +
                                ConsoleColors.RESET + " NORMAL");



                                Note
                                Don't forget to use the RESET after printing as the effect will remain if it's not cleared






                                public class ConsoleColors {
                                // Reset
                                public static final String RESET = "33[0m"; // Text Reset

                                // Regular Colors
                                public static final String BLACK = "33[0;30m"; // BLACK
                                public static final String RED = "33[0;31m"; // RED
                                public static final String GREEN = "33[0;32m"; // GREEN
                                public static final String YELLOW = "33[0;33m"; // YELLOW
                                public static final String BLUE = "33[0;34m"; // BLUE
                                public static final String PURPLE = "33[0;35m"; // PURPLE
                                public static final String CYAN = "33[0;36m"; // CYAN
                                public static final String WHITE = "33[0;37m"; // WHITE

                                // Bold
                                public static final String BLACK_BOLD = "33[1;30m"; // BLACK
                                public static final String RED_BOLD = "33[1;31m"; // RED
                                public static final String GREEN_BOLD = "33[1;32m"; // GREEN
                                public static final String YELLOW_BOLD = "33[1;33m"; // YELLOW
                                public static final String BLUE_BOLD = "33[1;34m"; // BLUE
                                public static final String PURPLE_BOLD = "33[1;35m"; // PURPLE
                                public static final String CYAN_BOLD = "33[1;36m"; // CYAN
                                public static final String WHITE_BOLD = "33[1;37m"; // WHITE

                                // Underline
                                public static final String BLACK_UNDERLINED = "33[4;30m"; // BLACK
                                public static final String RED_UNDERLINED = "33[4;31m"; // RED
                                public static final String GREEN_UNDERLINED = "33[4;32m"; // GREEN
                                public static final String YELLOW_UNDERLINED = "33[4;33m"; // YELLOW
                                public static final String BLUE_UNDERLINED = "33[4;34m"; // BLUE
                                public static final String PURPLE_UNDERLINED = "33[4;35m"; // PURPLE
                                public static final String CYAN_UNDERLINED = "33[4;36m"; // CYAN
                                public static final String WHITE_UNDERLINED = "33[4;37m"; // WHITE

                                // Background
                                public static final String BLACK_BACKGROUND = "33[40m"; // BLACK
                                public static final String RED_BACKGROUND = "33[41m"; // RED
                                public static final String GREEN_BACKGROUND = "33[42m"; // GREEN
                                public static final String YELLOW_BACKGROUND = "33[43m"; // YELLOW
                                public static final String BLUE_BACKGROUND = "33[44m"; // BLUE
                                public static final String PURPLE_BACKGROUND = "33[45m"; // PURPLE
                                public static final String CYAN_BACKGROUND = "33[46m"; // CYAN
                                public static final String WHITE_BACKGROUND = "33[47m"; // WHITE

                                // High Intensity
                                public static final String BLACK_BRIGHT = "33[0;90m"; // BLACK
                                public static final String RED_BRIGHT = "33[0;91m"; // RED
                                public static final String GREEN_BRIGHT = "33[0;92m"; // GREEN
                                public static final String YELLOW_BRIGHT = "33[0;93m"; // YELLOW
                                public static final String BLUE_BRIGHT = "33[0;94m"; // BLUE
                                public static final String PURPLE_BRIGHT = "33[0;95m"; // PURPLE
                                public static final String CYAN_BRIGHT = "33[0;96m"; // CYAN
                                public static final String WHITE_BRIGHT = "33[0;97m"; // WHITE

                                // Bold High Intensity
                                public static final String BLACK_BOLD_BRIGHT = "33[1;90m"; // BLACK
                                public static final String RED_BOLD_BRIGHT = "33[1;91m"; // RED
                                public static final String GREEN_BOLD_BRIGHT = "33[1;92m"; // GREEN
                                public static final String YELLOW_BOLD_BRIGHT = "33[1;93m";// YELLOW
                                public static final String BLUE_BOLD_BRIGHT = "33[1;94m"; // BLUE
                                public static final String PURPLE_BOLD_BRIGHT = "33[1;95m";// PURPLE
                                public static final String CYAN_BOLD_BRIGHT = "33[1;96m"; // CYAN
                                public static final String WHITE_BOLD_BRIGHT = "33[1;97m"; // WHITE

                                // High Intensity backgrounds
                                public static final String BLACK_BACKGROUND_BRIGHT = "33[0;100m";// BLACK
                                public static final String RED_BACKGROUND_BRIGHT = "33[0;101m";// RED
                                public static final String GREEN_BACKGROUND_BRIGHT = "33[0;102m";// GREEN
                                public static final String YELLOW_BACKGROUND_BRIGHT = "33[0;103m";// YELLOW
                                public static final String BLUE_BACKGROUND_BRIGHT = "33[0;104m";// BLUE
                                public static final String PURPLE_BACKGROUND_BRIGHT = "33[0;105m"; // PURPLE
                                public static final String CYAN_BACKGROUND_BRIGHT = "33[0;106m"; // CYAN
                                public static final String WHITE_BACKGROUND_BRIGHT = "33[0;107m"; // WHITE
                                }





                                share|improve this answer


























                                  31












                                  31








                                  31







                                  Here are a list of colors in a Java class with public static fields



                                  Usage



                                  System.out.println(ConsoleColors.RED + "RED COLORED" +
                                  ConsoleColors.RESET + " NORMAL");



                                  Note
                                  Don't forget to use the RESET after printing as the effect will remain if it's not cleared






                                  public class ConsoleColors {
                                  // Reset
                                  public static final String RESET = "33[0m"; // Text Reset

                                  // Regular Colors
                                  public static final String BLACK = "33[0;30m"; // BLACK
                                  public static final String RED = "33[0;31m"; // RED
                                  public static final String GREEN = "33[0;32m"; // GREEN
                                  public static final String YELLOW = "33[0;33m"; // YELLOW
                                  public static final String BLUE = "33[0;34m"; // BLUE
                                  public static final String PURPLE = "33[0;35m"; // PURPLE
                                  public static final String CYAN = "33[0;36m"; // CYAN
                                  public static final String WHITE = "33[0;37m"; // WHITE

                                  // Bold
                                  public static final String BLACK_BOLD = "33[1;30m"; // BLACK
                                  public static final String RED_BOLD = "33[1;31m"; // RED
                                  public static final String GREEN_BOLD = "33[1;32m"; // GREEN
                                  public static final String YELLOW_BOLD = "33[1;33m"; // YELLOW
                                  public static final String BLUE_BOLD = "33[1;34m"; // BLUE
                                  public static final String PURPLE_BOLD = "33[1;35m"; // PURPLE
                                  public static final String CYAN_BOLD = "33[1;36m"; // CYAN
                                  public static final String WHITE_BOLD = "33[1;37m"; // WHITE

                                  // Underline
                                  public static final String BLACK_UNDERLINED = "33[4;30m"; // BLACK
                                  public static final String RED_UNDERLINED = "33[4;31m"; // RED
                                  public static final String GREEN_UNDERLINED = "33[4;32m"; // GREEN
                                  public static final String YELLOW_UNDERLINED = "33[4;33m"; // YELLOW
                                  public static final String BLUE_UNDERLINED = "33[4;34m"; // BLUE
                                  public static final String PURPLE_UNDERLINED = "33[4;35m"; // PURPLE
                                  public static final String CYAN_UNDERLINED = "33[4;36m"; // CYAN
                                  public static final String WHITE_UNDERLINED = "33[4;37m"; // WHITE

                                  // Background
                                  public static final String BLACK_BACKGROUND = "33[40m"; // BLACK
                                  public static final String RED_BACKGROUND = "33[41m"; // RED
                                  public static final String GREEN_BACKGROUND = "33[42m"; // GREEN
                                  public static final String YELLOW_BACKGROUND = "33[43m"; // YELLOW
                                  public static final String BLUE_BACKGROUND = "33[44m"; // BLUE
                                  public static final String PURPLE_BACKGROUND = "33[45m"; // PURPLE
                                  public static final String CYAN_BACKGROUND = "33[46m"; // CYAN
                                  public static final String WHITE_BACKGROUND = "33[47m"; // WHITE

                                  // High Intensity
                                  public static final String BLACK_BRIGHT = "33[0;90m"; // BLACK
                                  public static final String RED_BRIGHT = "33[0;91m"; // RED
                                  public static final String GREEN_BRIGHT = "33[0;92m"; // GREEN
                                  public static final String YELLOW_BRIGHT = "33[0;93m"; // YELLOW
                                  public static final String BLUE_BRIGHT = "33[0;94m"; // BLUE
                                  public static final String PURPLE_BRIGHT = "33[0;95m"; // PURPLE
                                  public static final String CYAN_BRIGHT = "33[0;96m"; // CYAN
                                  public static final String WHITE_BRIGHT = "33[0;97m"; // WHITE

                                  // Bold High Intensity
                                  public static final String BLACK_BOLD_BRIGHT = "33[1;90m"; // BLACK
                                  public static final String RED_BOLD_BRIGHT = "33[1;91m"; // RED
                                  public static final String GREEN_BOLD_BRIGHT = "33[1;92m"; // GREEN
                                  public static final String YELLOW_BOLD_BRIGHT = "33[1;93m";// YELLOW
                                  public static final String BLUE_BOLD_BRIGHT = "33[1;94m"; // BLUE
                                  public static final String PURPLE_BOLD_BRIGHT = "33[1;95m";// PURPLE
                                  public static final String CYAN_BOLD_BRIGHT = "33[1;96m"; // CYAN
                                  public static final String WHITE_BOLD_BRIGHT = "33[1;97m"; // WHITE

                                  // High Intensity backgrounds
                                  public static final String BLACK_BACKGROUND_BRIGHT = "33[0;100m";// BLACK
                                  public static final String RED_BACKGROUND_BRIGHT = "33[0;101m";// RED
                                  public static final String GREEN_BACKGROUND_BRIGHT = "33[0;102m";// GREEN
                                  public static final String YELLOW_BACKGROUND_BRIGHT = "33[0;103m";// YELLOW
                                  public static final String BLUE_BACKGROUND_BRIGHT = "33[0;104m";// BLUE
                                  public static final String PURPLE_BACKGROUND_BRIGHT = "33[0;105m"; // PURPLE
                                  public static final String CYAN_BACKGROUND_BRIGHT = "33[0;106m"; // CYAN
                                  public static final String WHITE_BACKGROUND_BRIGHT = "33[0;107m"; // WHITE
                                  }





                                  share|improve this answer













                                  Here are a list of colors in a Java class with public static fields



                                  Usage



                                  System.out.println(ConsoleColors.RED + "RED COLORED" +
                                  ConsoleColors.RESET + " NORMAL");



                                  Note
                                  Don't forget to use the RESET after printing as the effect will remain if it's not cleared






                                  public class ConsoleColors {
                                  // Reset
                                  public static final String RESET = "33[0m"; // Text Reset

                                  // Regular Colors
                                  public static final String BLACK = "33[0;30m"; // BLACK
                                  public static final String RED = "33[0;31m"; // RED
                                  public static final String GREEN = "33[0;32m"; // GREEN
                                  public static final String YELLOW = "33[0;33m"; // YELLOW
                                  public static final String BLUE = "33[0;34m"; // BLUE
                                  public static final String PURPLE = "33[0;35m"; // PURPLE
                                  public static final String CYAN = "33[0;36m"; // CYAN
                                  public static final String WHITE = "33[0;37m"; // WHITE

                                  // Bold
                                  public static final String BLACK_BOLD = "33[1;30m"; // BLACK
                                  public static final String RED_BOLD = "33[1;31m"; // RED
                                  public static final String GREEN_BOLD = "33[1;32m"; // GREEN
                                  public static final String YELLOW_BOLD = "33[1;33m"; // YELLOW
                                  public static final String BLUE_BOLD = "33[1;34m"; // BLUE
                                  public static final String PURPLE_BOLD = "33[1;35m"; // PURPLE
                                  public static final String CYAN_BOLD = "33[1;36m"; // CYAN
                                  public static final String WHITE_BOLD = "33[1;37m"; // WHITE

                                  // Underline
                                  public static final String BLACK_UNDERLINED = "33[4;30m"; // BLACK
                                  public static final String RED_UNDERLINED = "33[4;31m"; // RED
                                  public static final String GREEN_UNDERLINED = "33[4;32m"; // GREEN
                                  public static final String YELLOW_UNDERLINED = "33[4;33m"; // YELLOW
                                  public static final String BLUE_UNDERLINED = "33[4;34m"; // BLUE
                                  public static final String PURPLE_UNDERLINED = "33[4;35m"; // PURPLE
                                  public static final String CYAN_UNDERLINED = "33[4;36m"; // CYAN
                                  public static final String WHITE_UNDERLINED = "33[4;37m"; // WHITE

                                  // Background
                                  public static final String BLACK_BACKGROUND = "33[40m"; // BLACK
                                  public static final String RED_BACKGROUND = "33[41m"; // RED
                                  public static final String GREEN_BACKGROUND = "33[42m"; // GREEN
                                  public static final String YELLOW_BACKGROUND = "33[43m"; // YELLOW
                                  public static final String BLUE_BACKGROUND = "33[44m"; // BLUE
                                  public static final String PURPLE_BACKGROUND = "33[45m"; // PURPLE
                                  public static final String CYAN_BACKGROUND = "33[46m"; // CYAN
                                  public static final String WHITE_BACKGROUND = "33[47m"; // WHITE

                                  // High Intensity
                                  public static final String BLACK_BRIGHT = "33[0;90m"; // BLACK
                                  public static final String RED_BRIGHT = "33[0;91m"; // RED
                                  public static final String GREEN_BRIGHT = "33[0;92m"; // GREEN
                                  public static final String YELLOW_BRIGHT = "33[0;93m"; // YELLOW
                                  public static final String BLUE_BRIGHT = "33[0;94m"; // BLUE
                                  public static final String PURPLE_BRIGHT = "33[0;95m"; // PURPLE
                                  public static final String CYAN_BRIGHT = "33[0;96m"; // CYAN
                                  public static final String WHITE_BRIGHT = "33[0;97m"; // WHITE

                                  // Bold High Intensity
                                  public static final String BLACK_BOLD_BRIGHT = "33[1;90m"; // BLACK
                                  public static final String RED_BOLD_BRIGHT = "33[1;91m"; // RED
                                  public static final String GREEN_BOLD_BRIGHT = "33[1;92m"; // GREEN
                                  public static final String YELLOW_BOLD_BRIGHT = "33[1;93m";// YELLOW
                                  public static final String BLUE_BOLD_BRIGHT = "33[1;94m"; // BLUE
                                  public static final String PURPLE_BOLD_BRIGHT = "33[1;95m";// PURPLE
                                  public static final String CYAN_BOLD_BRIGHT = "33[1;96m"; // CYAN
                                  public static final String WHITE_BOLD_BRIGHT = "33[1;97m"; // WHITE

                                  // High Intensity backgrounds
                                  public static final String BLACK_BACKGROUND_BRIGHT = "33[0;100m";// BLACK
                                  public static final String RED_BACKGROUND_BRIGHT = "33[0;101m";// RED
                                  public static final String GREEN_BACKGROUND_BRIGHT = "33[0;102m";// GREEN
                                  public static final String YELLOW_BACKGROUND_BRIGHT = "33[0;103m";// YELLOW
                                  public static final String BLUE_BACKGROUND_BRIGHT = "33[0;104m";// BLUE
                                  public static final String PURPLE_BACKGROUND_BRIGHT = "33[0;105m"; // PURPLE
                                  public static final String CYAN_BACKGROUND_BRIGHT = "33[0;106m"; // CYAN
                                  public static final String WHITE_BACKGROUND_BRIGHT = "33[0;107m"; // WHITE
                                  }






                                  share|improve this answer












                                  share|improve this answer



                                  share|improve this answer










                                  answered Aug 1 '17 at 17:57









                                  shakram02shakram02

                                  2,39321320




                                  2,39321320























                                      14














                                      A fairly portable way of doing it is with the raw escape sequences. See http://en.wikipedia.org/wiki/ANSI_escape_code



                                      [edited for user9999999 on 2017-02-20]



                                      Java doesn't "handle the codes", that's true, but Java outputs what you told it to output. it's not Java's fault that the Windows console treats ESC (chr(27)) as just another glyph (←).



                                      you made me boot into Windows. you owe me, bro






                                      share|improve this answer


























                                      • which doesn't work because the Java IO layer does not convert those to colors. System.out.println((char)27 + "[31;1mERROR" + (char)27 + "[0m" only yields "[31;1mERROR[0m" when run from a windows cmd.com as an executable .jar

                                        – simpleuser
                                        Feb 12 '17 at 6:03











                                      • the question wasn't tagged windows. the Windows console was never ANSI-compliant that I remember.

                                        – jcomeau_ictx
                                        Feb 12 '17 at 14:52











                                      • but the issue is that java isn't handling the codes, regardless of cmd.com's support

                                        – simpleuser
                                        Feb 20 '17 at 17:31






                                      • 2





                                        see edited answer. Java is doing exactly as it's told. the problem is the non-ANSI-compliant console.

                                        – jcomeau_ictx
                                        Feb 21 '17 at 6:32











                                      • I have same problem

                                        – sgrillon
                                        Mar 15 '18 at 14:58
















                                      14














                                      A fairly portable way of doing it is with the raw escape sequences. See http://en.wikipedia.org/wiki/ANSI_escape_code



                                      [edited for user9999999 on 2017-02-20]



                                      Java doesn't "handle the codes", that's true, but Java outputs what you told it to output. it's not Java's fault that the Windows console treats ESC (chr(27)) as just another glyph (←).



                                      you made me boot into Windows. you owe me, bro






                                      share|improve this answer


























                                      • which doesn't work because the Java IO layer does not convert those to colors. System.out.println((char)27 + "[31;1mERROR" + (char)27 + "[0m" only yields "[31;1mERROR[0m" when run from a windows cmd.com as an executable .jar

                                        – simpleuser
                                        Feb 12 '17 at 6:03











                                      • the question wasn't tagged windows. the Windows console was never ANSI-compliant that I remember.

                                        – jcomeau_ictx
                                        Feb 12 '17 at 14:52











                                      • but the issue is that java isn't handling the codes, regardless of cmd.com's support

                                        – simpleuser
                                        Feb 20 '17 at 17:31






                                      • 2





                                        see edited answer. Java is doing exactly as it's told. the problem is the non-ANSI-compliant console.

                                        – jcomeau_ictx
                                        Feb 21 '17 at 6:32











                                      • I have same problem

                                        – sgrillon
                                        Mar 15 '18 at 14:58














                                      14












                                      14








                                      14







                                      A fairly portable way of doing it is with the raw escape sequences. See http://en.wikipedia.org/wiki/ANSI_escape_code



                                      [edited for user9999999 on 2017-02-20]



                                      Java doesn't "handle the codes", that's true, but Java outputs what you told it to output. it's not Java's fault that the Windows console treats ESC (chr(27)) as just another glyph (←).



                                      you made me boot into Windows. you owe me, bro






                                      share|improve this answer















                                      A fairly portable way of doing it is with the raw escape sequences. See http://en.wikipedia.org/wiki/ANSI_escape_code



                                      [edited for user9999999 on 2017-02-20]



                                      Java doesn't "handle the codes", that's true, but Java outputs what you told it to output. it's not Java's fault that the Windows console treats ESC (chr(27)) as just another glyph (←).



                                      you made me boot into Windows. you owe me, bro







                                      share|improve this answer














                                      share|improve this answer



                                      share|improve this answer








                                      edited Feb 21 '17 at 11:46

























                                      answered Apr 23 '11 at 5:56









                                      jcomeau_ictxjcomeau_ictx

                                      30.3k56988




                                      30.3k56988













                                      • which doesn't work because the Java IO layer does not convert those to colors. System.out.println((char)27 + "[31;1mERROR" + (char)27 + "[0m" only yields "[31;1mERROR[0m" when run from a windows cmd.com as an executable .jar

                                        – simpleuser
                                        Feb 12 '17 at 6:03











                                      • the question wasn't tagged windows. the Windows console was never ANSI-compliant that I remember.

                                        – jcomeau_ictx
                                        Feb 12 '17 at 14:52











                                      • but the issue is that java isn't handling the codes, regardless of cmd.com's support

                                        – simpleuser
                                        Feb 20 '17 at 17:31






                                      • 2





                                        see edited answer. Java is doing exactly as it's told. the problem is the non-ANSI-compliant console.

                                        – jcomeau_ictx
                                        Feb 21 '17 at 6:32











                                      • I have same problem

                                        – sgrillon
                                        Mar 15 '18 at 14:58



















                                      • which doesn't work because the Java IO layer does not convert those to colors. System.out.println((char)27 + "[31;1mERROR" + (char)27 + "[0m" only yields "[31;1mERROR[0m" when run from a windows cmd.com as an executable .jar

                                        – simpleuser
                                        Feb 12 '17 at 6:03











                                      • the question wasn't tagged windows. the Windows console was never ANSI-compliant that I remember.

                                        – jcomeau_ictx
                                        Feb 12 '17 at 14:52











                                      • but the issue is that java isn't handling the codes, regardless of cmd.com's support

                                        – simpleuser
                                        Feb 20 '17 at 17:31






                                      • 2





                                        see edited answer. Java is doing exactly as it's told. the problem is the non-ANSI-compliant console.

                                        – jcomeau_ictx
                                        Feb 21 '17 at 6:32











                                      • I have same problem

                                        – sgrillon
                                        Mar 15 '18 at 14:58

















                                      which doesn't work because the Java IO layer does not convert those to colors. System.out.println((char)27 + "[31;1mERROR" + (char)27 + "[0m" only yields "[31;1mERROR[0m" when run from a windows cmd.com as an executable .jar

                                      – simpleuser
                                      Feb 12 '17 at 6:03





                                      which doesn't work because the Java IO layer does not convert those to colors. System.out.println((char)27 + "[31;1mERROR" + (char)27 + "[0m" only yields "[31;1mERROR[0m" when run from a windows cmd.com as an executable .jar

                                      – simpleuser
                                      Feb 12 '17 at 6:03













                                      the question wasn't tagged windows. the Windows console was never ANSI-compliant that I remember.

                                      – jcomeau_ictx
                                      Feb 12 '17 at 14:52





                                      the question wasn't tagged windows. the Windows console was never ANSI-compliant that I remember.

                                      – jcomeau_ictx
                                      Feb 12 '17 at 14:52













                                      but the issue is that java isn't handling the codes, regardless of cmd.com's support

                                      – simpleuser
                                      Feb 20 '17 at 17:31





                                      but the issue is that java isn't handling the codes, regardless of cmd.com's support

                                      – simpleuser
                                      Feb 20 '17 at 17:31




                                      2




                                      2





                                      see edited answer. Java is doing exactly as it's told. the problem is the non-ANSI-compliant console.

                                      – jcomeau_ictx
                                      Feb 21 '17 at 6:32





                                      see edited answer. Java is doing exactly as it's told. the problem is the non-ANSI-compliant console.

                                      – jcomeau_ictx
                                      Feb 21 '17 at 6:32













                                      I have same problem

                                      – sgrillon
                                      Mar 15 '18 at 14:58





                                      I have same problem

                                      – sgrillon
                                      Mar 15 '18 at 14:58











                                      11














                                      public enum Color {
                                      //颜色结尾字符串,重置颜色的
                                      RESET("33[0m"),

                                      // Regular Colors 普通颜色,不带加粗,背景色等
                                      BLACK("33[0;30m"), // BLACK
                                      RED("33[0;31m"), // RED
                                      GREEN("33[0;32m"), // GREEN
                                      YELLOW("33[0;33m"), // YELLOW
                                      BLUE("33[0;34m"), // BLUE
                                      MAGENTA("33[0;35m"), // MAGENTA
                                      CYAN("33[0;36m"), // CYAN
                                      WHITE("33[0;37m"), // WHITE

                                      // Bold
                                      BLACK_BOLD("33[1;30m"), // BLACK
                                      RED_BOLD("33[1;31m"), // RED
                                      GREEN_BOLD("33[1;32m"), // GREEN
                                      YELLOW_BOLD("33[1;33m"), // YELLOW
                                      BLUE_BOLD("33[1;34m"), // BLUE
                                      MAGENTA_BOLD("33[1;35m"), // MAGENTA
                                      CYAN_BOLD("33[1;36m"), // CYAN
                                      WHITE_BOLD("33[1;37m"), // WHITE

                                      // Underline
                                      BLACK_UNDERLINED("33[4;30m"), // BLACK
                                      RED_UNDERLINED("33[4;31m"), // RED
                                      GREEN_UNDERLINED("33[4;32m"), // GREEN
                                      YELLOW_UNDERLINED("33[4;33m"), // YELLOW
                                      BLUE_UNDERLINED("33[4;34m"), // BLUE
                                      MAGENTA_UNDERLINED("33[4;35m"), // MAGENTA
                                      CYAN_UNDERLINED("33[4;36m"), // CYAN
                                      WHITE_UNDERLINED("33[4;37m"), // WHITE

                                      // Background
                                      BLACK_BACKGROUND("33[40m"), // BLACK
                                      RED_BACKGROUND("33[41m"), // RED
                                      GREEN_BACKGROUND("33[42m"), // GREEN
                                      YELLOW_BACKGROUND("33[43m"), // YELLOW
                                      BLUE_BACKGROUND("33[44m"), // BLUE
                                      MAGENTA_BACKGROUND("33[45m"), // MAGENTA
                                      CYAN_BACKGROUND("33[46m"), // CYAN
                                      WHITE_BACKGROUND("33[47m"), // WHITE

                                      // High Intensity
                                      BLACK_BRIGHT("33[0;90m"), // BLACK
                                      RED_BRIGHT("33[0;91m"), // RED
                                      GREEN_BRIGHT("33[0;92m"), // GREEN
                                      YELLOW_BRIGHT("33[0;93m"), // YELLOW
                                      BLUE_BRIGHT("33[0;94m"), // BLUE
                                      MAGENTA_BRIGHT("33[0;95m"), // MAGENTA
                                      CYAN_BRIGHT("33[0;96m"), // CYAN
                                      WHITE_BRIGHT("33[0;97m"), // WHITE

                                      // Bold High Intensity
                                      BLACK_BOLD_BRIGHT("33[1;90m"), // BLACK
                                      RED_BOLD_BRIGHT("33[1;91m"), // RED
                                      GREEN_BOLD_BRIGHT("33[1;92m"), // GREEN
                                      YELLOW_BOLD_BRIGHT("33[1;93m"), // YELLOW
                                      BLUE_BOLD_BRIGHT("33[1;94m"), // BLUE
                                      MAGENTA_BOLD_BRIGHT("33[1;95m"), // MAGENTA
                                      CYAN_BOLD_BRIGHT("33[1;96m"), // CYAN
                                      WHITE_BOLD_BRIGHT("33[1;97m"), // WHITE

                                      // High Intensity backgrounds
                                      BLACK_BACKGROUND_BRIGHT("33[0;100m"), // BLACK
                                      RED_BACKGROUND_BRIGHT("33[0;101m"), // RED
                                      GREEN_BACKGROUND_BRIGHT("33[0;102m"), // GREEN
                                      YELLOW_BACKGROUND_BRIGHT("33[0;103m"), // YELLOW
                                      BLUE_BACKGROUND_BRIGHT("33[0;104m"), // BLUE
                                      MAGENTA_BACKGROUND_BRIGHT("33[0;105m"), // MAGENTA
                                      CYAN_BACKGROUND_BRIGHT("33[0;106m"), // CYAN
                                      WHITE_BACKGROUND_BRIGHT("33[0;107m"); // WHITE

                                      private final String code;

                                      Color(String code) {
                                      this.code = code;
                                      }

                                      @Override
                                      public String toString() {
                                      return code;
                                      }
                                      }



                                      System.out.print(Color.BLACK_BOLD);
                                      System.out.println("111111111aaaaaaaaaaaaaaaa==============");
                                      System.out.print(Color.RESET);

                                      System.out.print(Color.BLUE_BACKGROUND);
                                      System.out.print(Color.YELLOW); //设置前景色 为YELLOW
                                      System.out.println("111111111aaaaaaaaaaaaaaaa==============马哥私房菜");
                                      System.out.println("111111111aaaaaaaaaaaaaaaa==============马哥私房菜");
                                      System.out.println("111111111aaaaaaaaaaaaaaaa==============马哥私房菜");
                                      System.out.println("111111111aaaaaaaaaaaaaaaa==============马哥私房菜");
                                      System.out.print(Color.RESET);





                                      share|improve this answer
























                                      • Excellent enum !

                                        – Amr Lotfy
                                        Aug 28 '18 at 23:54
















                                      11














                                      public enum Color {
                                      //颜色结尾字符串,重置颜色的
                                      RESET("33[0m"),

                                      // Regular Colors 普通颜色,不带加粗,背景色等
                                      BLACK("33[0;30m"), // BLACK
                                      RED("33[0;31m"), // RED
                                      GREEN("33[0;32m"), // GREEN
                                      YELLOW("33[0;33m"), // YELLOW
                                      BLUE("33[0;34m"), // BLUE
                                      MAGENTA("33[0;35m"), // MAGENTA
                                      CYAN("33[0;36m"), // CYAN
                                      WHITE("33[0;37m"), // WHITE

                                      // Bold
                                      BLACK_BOLD("33[1;30m"), // BLACK
                                      RED_BOLD("33[1;31m"), // RED
                                      GREEN_BOLD("33[1;32m"), // GREEN
                                      YELLOW_BOLD("33[1;33m"), // YELLOW
                                      BLUE_BOLD("33[1;34m"), // BLUE
                                      MAGENTA_BOLD("33[1;35m"), // MAGENTA
                                      CYAN_BOLD("33[1;36m"), // CYAN
                                      WHITE_BOLD("33[1;37m"), // WHITE

                                      // Underline
                                      BLACK_UNDERLINED("33[4;30m"), // BLACK
                                      RED_UNDERLINED("33[4;31m"), // RED
                                      GREEN_UNDERLINED("33[4;32m"), // GREEN
                                      YELLOW_UNDERLINED("33[4;33m"), // YELLOW
                                      BLUE_UNDERLINED("33[4;34m"), // BLUE
                                      MAGENTA_UNDERLINED("33[4;35m"), // MAGENTA
                                      CYAN_UNDERLINED("33[4;36m"), // CYAN
                                      WHITE_UNDERLINED("33[4;37m"), // WHITE

                                      // Background
                                      BLACK_BACKGROUND("33[40m"), // BLACK
                                      RED_BACKGROUND("33[41m"), // RED
                                      GREEN_BACKGROUND("33[42m"), // GREEN
                                      YELLOW_BACKGROUND("33[43m"), // YELLOW
                                      BLUE_BACKGROUND("33[44m"), // BLUE
                                      MAGENTA_BACKGROUND("33[45m"), // MAGENTA
                                      CYAN_BACKGROUND("33[46m"), // CYAN
                                      WHITE_BACKGROUND("33[47m"), // WHITE

                                      // High Intensity
                                      BLACK_BRIGHT("33[0;90m"), // BLACK
                                      RED_BRIGHT("33[0;91m"), // RED
                                      GREEN_BRIGHT("33[0;92m"), // GREEN
                                      YELLOW_BRIGHT("33[0;93m"), // YELLOW
                                      BLUE_BRIGHT("33[0;94m"), // BLUE
                                      MAGENTA_BRIGHT("33[0;95m"), // MAGENTA
                                      CYAN_BRIGHT("33[0;96m"), // CYAN
                                      WHITE_BRIGHT("33[0;97m"), // WHITE

                                      // Bold High Intensity
                                      BLACK_BOLD_BRIGHT("33[1;90m"), // BLACK
                                      RED_BOLD_BRIGHT("33[1;91m"), // RED
                                      GREEN_BOLD_BRIGHT("33[1;92m"), // GREEN
                                      YELLOW_BOLD_BRIGHT("33[1;93m"), // YELLOW
                                      BLUE_BOLD_BRIGHT("33[1;94m"), // BLUE
                                      MAGENTA_BOLD_BRIGHT("33[1;95m"), // MAGENTA
                                      CYAN_BOLD_BRIGHT("33[1;96m"), // CYAN
                                      WHITE_BOLD_BRIGHT("33[1;97m"), // WHITE

                                      // High Intensity backgrounds
                                      BLACK_BACKGROUND_BRIGHT("33[0;100m"), // BLACK
                                      RED_BACKGROUND_BRIGHT("33[0;101m"), // RED
                                      GREEN_BACKGROUND_BRIGHT("33[0;102m"), // GREEN
                                      YELLOW_BACKGROUND_BRIGHT("33[0;103m"), // YELLOW
                                      BLUE_BACKGROUND_BRIGHT("33[0;104m"), // BLUE
                                      MAGENTA_BACKGROUND_BRIGHT("33[0;105m"), // MAGENTA
                                      CYAN_BACKGROUND_BRIGHT("33[0;106m"), // CYAN
                                      WHITE_BACKGROUND_BRIGHT("33[0;107m"); // WHITE

                                      private final String code;

                                      Color(String code) {
                                      this.code = code;
                                      }

                                      @Override
                                      public String toString() {
                                      return code;
                                      }
                                      }



                                      System.out.print(Color.BLACK_BOLD);
                                      System.out.println("111111111aaaaaaaaaaaaaaaa==============");
                                      System.out.print(Color.RESET);

                                      System.out.print(Color.BLUE_BACKGROUND);
                                      System.out.print(Color.YELLOW); //设置前景色 为YELLOW
                                      System.out.println("111111111aaaaaaaaaaaaaaaa==============马哥私房菜");
                                      System.out.println("111111111aaaaaaaaaaaaaaaa==============马哥私房菜");
                                      System.out.println("111111111aaaaaaaaaaaaaaaa==============马哥私房菜");
                                      System.out.println("111111111aaaaaaaaaaaaaaaa==============马哥私房菜");
                                      System.out.print(Color.RESET);





                                      share|improve this answer
























                                      • Excellent enum !

                                        – Amr Lotfy
                                        Aug 28 '18 at 23:54














                                      11












                                      11








                                      11







                                      public enum Color {
                                      //颜色结尾字符串,重置颜色的
                                      RESET("33[0m"),

                                      // Regular Colors 普通颜色,不带加粗,背景色等
                                      BLACK("33[0;30m"), // BLACK
                                      RED("33[0;31m"), // RED
                                      GREEN("33[0;32m"), // GREEN
                                      YELLOW("33[0;33m"), // YELLOW
                                      BLUE("33[0;34m"), // BLUE
                                      MAGENTA("33[0;35m"), // MAGENTA
                                      CYAN("33[0;36m"), // CYAN
                                      WHITE("33[0;37m"), // WHITE

                                      // Bold
                                      BLACK_BOLD("33[1;30m"), // BLACK
                                      RED_BOLD("33[1;31m"), // RED
                                      GREEN_BOLD("33[1;32m"), // GREEN
                                      YELLOW_BOLD("33[1;33m"), // YELLOW
                                      BLUE_BOLD("33[1;34m"), // BLUE
                                      MAGENTA_BOLD("33[1;35m"), // MAGENTA
                                      CYAN_BOLD("33[1;36m"), // CYAN
                                      WHITE_BOLD("33[1;37m"), // WHITE

                                      // Underline
                                      BLACK_UNDERLINED("33[4;30m"), // BLACK
                                      RED_UNDERLINED("33[4;31m"), // RED
                                      GREEN_UNDERLINED("33[4;32m"), // GREEN
                                      YELLOW_UNDERLINED("33[4;33m"), // YELLOW
                                      BLUE_UNDERLINED("33[4;34m"), // BLUE
                                      MAGENTA_UNDERLINED("33[4;35m"), // MAGENTA
                                      CYAN_UNDERLINED("33[4;36m"), // CYAN
                                      WHITE_UNDERLINED("33[4;37m"), // WHITE

                                      // Background
                                      BLACK_BACKGROUND("33[40m"), // BLACK
                                      RED_BACKGROUND("33[41m"), // RED
                                      GREEN_BACKGROUND("33[42m"), // GREEN
                                      YELLOW_BACKGROUND("33[43m"), // YELLOW
                                      BLUE_BACKGROUND("33[44m"), // BLUE
                                      MAGENTA_BACKGROUND("33[45m"), // MAGENTA
                                      CYAN_BACKGROUND("33[46m"), // CYAN
                                      WHITE_BACKGROUND("33[47m"), // WHITE

                                      // High Intensity
                                      BLACK_BRIGHT("33[0;90m"), // BLACK
                                      RED_BRIGHT("33[0;91m"), // RED
                                      GREEN_BRIGHT("33[0;92m"), // GREEN
                                      YELLOW_BRIGHT("33[0;93m"), // YELLOW
                                      BLUE_BRIGHT("33[0;94m"), // BLUE
                                      MAGENTA_BRIGHT("33[0;95m"), // MAGENTA
                                      CYAN_BRIGHT("33[0;96m"), // CYAN
                                      WHITE_BRIGHT("33[0;97m"), // WHITE

                                      // Bold High Intensity
                                      BLACK_BOLD_BRIGHT("33[1;90m"), // BLACK
                                      RED_BOLD_BRIGHT("33[1;91m"), // RED
                                      GREEN_BOLD_BRIGHT("33[1;92m"), // GREEN
                                      YELLOW_BOLD_BRIGHT("33[1;93m"), // YELLOW
                                      BLUE_BOLD_BRIGHT("33[1;94m"), // BLUE
                                      MAGENTA_BOLD_BRIGHT("33[1;95m"), // MAGENTA
                                      CYAN_BOLD_BRIGHT("33[1;96m"), // CYAN
                                      WHITE_BOLD_BRIGHT("33[1;97m"), // WHITE

                                      // High Intensity backgrounds
                                      BLACK_BACKGROUND_BRIGHT("33[0;100m"), // BLACK
                                      RED_BACKGROUND_BRIGHT("33[0;101m"), // RED
                                      GREEN_BACKGROUND_BRIGHT("33[0;102m"), // GREEN
                                      YELLOW_BACKGROUND_BRIGHT("33[0;103m"), // YELLOW
                                      BLUE_BACKGROUND_BRIGHT("33[0;104m"), // BLUE
                                      MAGENTA_BACKGROUND_BRIGHT("33[0;105m"), // MAGENTA
                                      CYAN_BACKGROUND_BRIGHT("33[0;106m"), // CYAN
                                      WHITE_BACKGROUND_BRIGHT("33[0;107m"); // WHITE

                                      private final String code;

                                      Color(String code) {
                                      this.code = code;
                                      }

                                      @Override
                                      public String toString() {
                                      return code;
                                      }
                                      }



                                      System.out.print(Color.BLACK_BOLD);
                                      System.out.println("111111111aaaaaaaaaaaaaaaa==============");
                                      System.out.print(Color.RESET);

                                      System.out.print(Color.BLUE_BACKGROUND);
                                      System.out.print(Color.YELLOW); //设置前景色 为YELLOW
                                      System.out.println("111111111aaaaaaaaaaaaaaaa==============马哥私房菜");
                                      System.out.println("111111111aaaaaaaaaaaaaaaa==============马哥私房菜");
                                      System.out.println("111111111aaaaaaaaaaaaaaaa==============马哥私房菜");
                                      System.out.println("111111111aaaaaaaaaaaaaaaa==============马哥私房菜");
                                      System.out.print(Color.RESET);





                                      share|improve this answer













                                      public enum Color {
                                      //颜色结尾字符串,重置颜色的
                                      RESET("33[0m"),

                                      // Regular Colors 普通颜色,不带加粗,背景色等
                                      BLACK("33[0;30m"), // BLACK
                                      RED("33[0;31m"), // RED
                                      GREEN("33[0;32m"), // GREEN
                                      YELLOW("33[0;33m"), // YELLOW
                                      BLUE("33[0;34m"), // BLUE
                                      MAGENTA("33[0;35m"), // MAGENTA
                                      CYAN("33[0;36m"), // CYAN
                                      WHITE("33[0;37m"), // WHITE

                                      // Bold
                                      BLACK_BOLD("33[1;30m"), // BLACK
                                      RED_BOLD("33[1;31m"), // RED
                                      GREEN_BOLD("33[1;32m"), // GREEN
                                      YELLOW_BOLD("33[1;33m"), // YELLOW
                                      BLUE_BOLD("33[1;34m"), // BLUE
                                      MAGENTA_BOLD("33[1;35m"), // MAGENTA
                                      CYAN_BOLD("33[1;36m"), // CYAN
                                      WHITE_BOLD("33[1;37m"), // WHITE

                                      // Underline
                                      BLACK_UNDERLINED("33[4;30m"), // BLACK
                                      RED_UNDERLINED("33[4;31m"), // RED
                                      GREEN_UNDERLINED("33[4;32m"), // GREEN
                                      YELLOW_UNDERLINED("33[4;33m"), // YELLOW
                                      BLUE_UNDERLINED("33[4;34m"), // BLUE
                                      MAGENTA_UNDERLINED("33[4;35m"), // MAGENTA
                                      CYAN_UNDERLINED("33[4;36m"), // CYAN
                                      WHITE_UNDERLINED("33[4;37m"), // WHITE

                                      // Background
                                      BLACK_BACKGROUND("33[40m"), // BLACK
                                      RED_BACKGROUND("33[41m"), // RED
                                      GREEN_BACKGROUND("33[42m"), // GREEN
                                      YELLOW_BACKGROUND("33[43m"), // YELLOW
                                      BLUE_BACKGROUND("33[44m"), // BLUE
                                      MAGENTA_BACKGROUND("33[45m"), // MAGENTA
                                      CYAN_BACKGROUND("33[46m"), // CYAN
                                      WHITE_BACKGROUND("33[47m"), // WHITE

                                      // High Intensity
                                      BLACK_BRIGHT("33[0;90m"), // BLACK
                                      RED_BRIGHT("33[0;91m"), // RED
                                      GREEN_BRIGHT("33[0;92m"), // GREEN
                                      YELLOW_BRIGHT("33[0;93m"), // YELLOW
                                      BLUE_BRIGHT("33[0;94m"), // BLUE
                                      MAGENTA_BRIGHT("33[0;95m"), // MAGENTA
                                      CYAN_BRIGHT("33[0;96m"), // CYAN
                                      WHITE_BRIGHT("33[0;97m"), // WHITE

                                      // Bold High Intensity
                                      BLACK_BOLD_BRIGHT("33[1;90m"), // BLACK
                                      RED_BOLD_BRIGHT("33[1;91m"), // RED
                                      GREEN_BOLD_BRIGHT("33[1;92m"), // GREEN
                                      YELLOW_BOLD_BRIGHT("33[1;93m"), // YELLOW
                                      BLUE_BOLD_BRIGHT("33[1;94m"), // BLUE
                                      MAGENTA_BOLD_BRIGHT("33[1;95m"), // MAGENTA
                                      CYAN_BOLD_BRIGHT("33[1;96m"), // CYAN
                                      WHITE_BOLD_BRIGHT("33[1;97m"), // WHITE

                                      // High Intensity backgrounds
                                      BLACK_BACKGROUND_BRIGHT("33[0;100m"), // BLACK
                                      RED_BACKGROUND_BRIGHT("33[0;101m"), // RED
                                      GREEN_BACKGROUND_BRIGHT("33[0;102m"), // GREEN
                                      YELLOW_BACKGROUND_BRIGHT("33[0;103m"), // YELLOW
                                      BLUE_BACKGROUND_BRIGHT("33[0;104m"), // BLUE
                                      MAGENTA_BACKGROUND_BRIGHT("33[0;105m"), // MAGENTA
                                      CYAN_BACKGROUND_BRIGHT("33[0;106m"), // CYAN
                                      WHITE_BACKGROUND_BRIGHT("33[0;107m"); // WHITE

                                      private final String code;

                                      Color(String code) {
                                      this.code = code;
                                      }

                                      @Override
                                      public String toString() {
                                      return code;
                                      }
                                      }



                                      System.out.print(Color.BLACK_BOLD);
                                      System.out.println("111111111aaaaaaaaaaaaaaaa==============");
                                      System.out.print(Color.RESET);

                                      System.out.print(Color.BLUE_BACKGROUND);
                                      System.out.print(Color.YELLOW); //设置前景色 为YELLOW
                                      System.out.println("111111111aaaaaaaaaaaaaaaa==============马哥私房菜");
                                      System.out.println("111111111aaaaaaaaaaaaaaaa==============马哥私房菜");
                                      System.out.println("111111111aaaaaaaaaaaaaaaa==============马哥私房菜");
                                      System.out.println("111111111aaaaaaaaaaaaaaaa==============马哥私房菜");
                                      System.out.print(Color.RESET);






                                      share|improve this answer












                                      share|improve this answer



                                      share|improve this answer










                                      answered Aug 21 '18 at 8:28









                                      马哥私房菜马哥私房菜

                                      13913




                                      13913













                                      • Excellent enum !

                                        – Amr Lotfy
                                        Aug 28 '18 at 23:54



















                                      • Excellent enum !

                                        – Amr Lotfy
                                        Aug 28 '18 at 23:54

















                                      Excellent enum !

                                      – Amr Lotfy
                                      Aug 28 '18 at 23:54





                                      Excellent enum !

                                      – Amr Lotfy
                                      Aug 28 '18 at 23:54











                                      6














                                      You could do this using ANSI escape sequences. I've actually put together this class in Java for anyone that would like a simple workaround for this. It allows for the use of custom color codes in text.



                                      https://gist.github.com/nathan-fiscaletti/9dc252d30b51df7d710a



                                      Example Use:



                                      Color code format WITH background color -> :foreground,background:



                                      Color code format WITHOUT background color -> :foreground,N:



                                      Reset Color format -> [RC]



                                      String ansiColoredString = ColorCodes.parseColors("Hello, This :blue,n:is[RC] a :red,white:response[RC].");


                                      or



                                      String ansiColoredString = ColorCodes.RED + "Hello" + ColorCodes.WHITE + ", This is a " + ColorCodes.BLUE + "test";





                                      share|improve this answer






























                                        6














                                        You could do this using ANSI escape sequences. I've actually put together this class in Java for anyone that would like a simple workaround for this. It allows for the use of custom color codes in text.



                                        https://gist.github.com/nathan-fiscaletti/9dc252d30b51df7d710a



                                        Example Use:



                                        Color code format WITH background color -> :foreground,background:



                                        Color code format WITHOUT background color -> :foreground,N:



                                        Reset Color format -> [RC]



                                        String ansiColoredString = ColorCodes.parseColors("Hello, This :blue,n:is[RC] a :red,white:response[RC].");


                                        or



                                        String ansiColoredString = ColorCodes.RED + "Hello" + ColorCodes.WHITE + ", This is a " + ColorCodes.BLUE + "test";





                                        share|improve this answer




























                                          6












                                          6








                                          6







                                          You could do this using ANSI escape sequences. I've actually put together this class in Java for anyone that would like a simple workaround for this. It allows for the use of custom color codes in text.



                                          https://gist.github.com/nathan-fiscaletti/9dc252d30b51df7d710a



                                          Example Use:



                                          Color code format WITH background color -> :foreground,background:



                                          Color code format WITHOUT background color -> :foreground,N:



                                          Reset Color format -> [RC]



                                          String ansiColoredString = ColorCodes.parseColors("Hello, This :blue,n:is[RC] a :red,white:response[RC].");


                                          or



                                          String ansiColoredString = ColorCodes.RED + "Hello" + ColorCodes.WHITE + ", This is a " + ColorCodes.BLUE + "test";





                                          share|improve this answer















                                          You could do this using ANSI escape sequences. I've actually put together this class in Java for anyone that would like a simple workaround for this. It allows for the use of custom color codes in text.



                                          https://gist.github.com/nathan-fiscaletti/9dc252d30b51df7d710a



                                          Example Use:



                                          Color code format WITH background color -> :foreground,background:



                                          Color code format WITHOUT background color -> :foreground,N:



                                          Reset Color format -> [RC]



                                          String ansiColoredString = ColorCodes.parseColors("Hello, This :blue,n:is[RC] a :red,white:response[RC].");


                                          or



                                          String ansiColoredString = ColorCodes.RED + "Hello" + ColorCodes.WHITE + ", This is a " + ColorCodes.BLUE + "test";






                                          share|improve this answer














                                          share|improve this answer



                                          share|improve this answer








                                          edited Sep 24 '16 at 1:57

























                                          answered Jan 5 '15 at 21:35









                                          Nathan FiscalettiNathan Fiscaletti

                                          8151439




                                          8151439























                                              5














                                              If anyone is looking for a quick solution, feel free to use the following helper class :)



                                              public class Log {

                                              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";

                                              //info
                                              public static void i(String className, String message) {
                                              System.out.println(ANSI_GREEN + className + " : " + message + ANSI_RESET);
                                              }

                                              //error
                                              public static void e(String className, String message) {
                                              System.out.println(ANSI_RED + className + " : " + message + ANSI_RESET);
                                              }

                                              //debug
                                              public static void d(String className, String message) {
                                              System.out.println(ANSI_BLUE + className + " : " + message + ANSI_RESET);
                                              }

                                              //warning
                                              public static void w(String className, String message) {
                                              System.out.println(ANSI_YELLOW + className + " : " + message + ANSI_RESET);
                                              }

                                              }


                                              USAGE:



                                              Log.i(TAG,"This is an info message");

                                              Log.e(TAG,"This is an error message");

                                              Log.w(TAG,"This is a warning message");

                                              Log.d(TAG,"This is a debug message");


                                              Thanks @whiteFang34 for the ANSI codes.






                                              share|improve this answer




























                                                5














                                                If anyone is looking for a quick solution, feel free to use the following helper class :)



                                                public class Log {

                                                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";

                                                //info
                                                public static void i(String className, String message) {
                                                System.out.println(ANSI_GREEN + className + " : " + message + ANSI_RESET);
                                                }

                                                //error
                                                public static void e(String className, String message) {
                                                System.out.println(ANSI_RED + className + " : " + message + ANSI_RESET);
                                                }

                                                //debug
                                                public static void d(String className, String message) {
                                                System.out.println(ANSI_BLUE + className + " : " + message + ANSI_RESET);
                                                }

                                                //warning
                                                public static void w(String className, String message) {
                                                System.out.println(ANSI_YELLOW + className + " : " + message + ANSI_RESET);
                                                }

                                                }


                                                USAGE:



                                                Log.i(TAG,"This is an info message");

                                                Log.e(TAG,"This is an error message");

                                                Log.w(TAG,"This is a warning message");

                                                Log.d(TAG,"This is a debug message");


                                                Thanks @whiteFang34 for the ANSI codes.






                                                share|improve this answer


























                                                  5












                                                  5








                                                  5







                                                  If anyone is looking for a quick solution, feel free to use the following helper class :)



                                                  public class Log {

                                                  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";

                                                  //info
                                                  public static void i(String className, String message) {
                                                  System.out.println(ANSI_GREEN + className + " : " + message + ANSI_RESET);
                                                  }

                                                  //error
                                                  public static void e(String className, String message) {
                                                  System.out.println(ANSI_RED + className + " : " + message + ANSI_RESET);
                                                  }

                                                  //debug
                                                  public static void d(String className, String message) {
                                                  System.out.println(ANSI_BLUE + className + " : " + message + ANSI_RESET);
                                                  }

                                                  //warning
                                                  public static void w(String className, String message) {
                                                  System.out.println(ANSI_YELLOW + className + " : " + message + ANSI_RESET);
                                                  }

                                                  }


                                                  USAGE:



                                                  Log.i(TAG,"This is an info message");

                                                  Log.e(TAG,"This is an error message");

                                                  Log.w(TAG,"This is a warning message");

                                                  Log.d(TAG,"This is a debug message");


                                                  Thanks @whiteFang34 for the ANSI codes.






                                                  share|improve this answer













                                                  If anyone is looking for a quick solution, feel free to use the following helper class :)



                                                  public class Log {

                                                  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";

                                                  //info
                                                  public static void i(String className, String message) {
                                                  System.out.println(ANSI_GREEN + className + " : " + message + ANSI_RESET);
                                                  }

                                                  //error
                                                  public static void e(String className, String message) {
                                                  System.out.println(ANSI_RED + className + " : " + message + ANSI_RESET);
                                                  }

                                                  //debug
                                                  public static void d(String className, String message) {
                                                  System.out.println(ANSI_BLUE + className + " : " + message + ANSI_RESET);
                                                  }

                                                  //warning
                                                  public static void w(String className, String message) {
                                                  System.out.println(ANSI_YELLOW + className + " : " + message + ANSI_RESET);
                                                  }

                                                  }


                                                  USAGE:



                                                  Log.i(TAG,"This is an info message");

                                                  Log.e(TAG,"This is an error message");

                                                  Log.w(TAG,"This is a warning message");

                                                  Log.d(TAG,"This is a debug message");


                                                  Thanks @whiteFang34 for the ANSI codes.







                                                  share|improve this answer












                                                  share|improve this answer



                                                  share|improve this answer










                                                  answered Sep 23 '17 at 3:22









                                                  Ajmal SalimAjmal Salim

                                                  2,82822435




                                                  2,82822435























                                                      0














                                                      If you use Kotlin (which works seamlessly with Java), you can make such an enum:



                                                      enum class AnsiColor(private val colorNumber: Byte) {
                                                      BLACK(0), RED(1), GREEN(2), YELLOW(3), BLUE(4), MAGENTA(5), CYAN(6), WHITE(7);

                                                      companion object {
                                                      private const val prefix = "u001B"
                                                      const val RESET = "$prefix[0m"
                                                      private val isCompatible = "win" !in System.getProperty("os.name").toLowerCase()
                                                      }

                                                      val regular get() = if (isCompatible) "$prefix[0;3${colorNumber}m" else ""
                                                      val bold get() = if (isCompatible) "$prefix[1;3${colorNumber}m" else ""
                                                      val underline get() = if (isCompatible) "$prefix[4;3${colorNumber}m" else ""
                                                      val background get() = if (isCompatible) "$prefix[4${colorNumber}m" else ""
                                                      val highIntensity get() = if (isCompatible) "$prefix[0;9${colorNumber}m" else ""
                                                      val boldHighIntensity get() = if (isCompatible) "$prefix[1;9${colorNumber}m" else ""
                                                      val backgroundHighIntensity get() = if (isCompatible) "$prefix[0;10${colorNumber}m" else ""
                                                      }


                                                      And then use is as such: (code below showcases the different styles for all colors)



                                                      val sampleText = "This is a sample text"
                                                      enumValues<AnsiColor>().forEach { ansiColor ->
                                                      println("${ansiColor.regular}$sampleText${AnsiColor.RESET}")
                                                      println("${ansiColor.bold}$sampleText${AnsiColor.RESET}")
                                                      println("${ansiColor.underline}$sampleText${AnsiColor.RESET}")
                                                      println("${ansiColor.background}$sampleText${AnsiColor.RESET}")
                                                      println("${ansiColor.highIntensity}$sampleText${AnsiColor.RESET}")
                                                      println("${ansiColor.boldHighIntensity}$sampleText${AnsiColor.RESET}")
                                                      println("${ansiColor.backgroundHighIntensity}$sampleText${AnsiColor.RESET}")
                                                      }


                                                      If running on Windows where these ANSI codes are not supported, the isCompatible check avoids issues by replacing the codes with empty string.






                                                      share|improve this answer




























                                                        0














                                                        If you use Kotlin (which works seamlessly with Java), you can make such an enum:



                                                        enum class AnsiColor(private val colorNumber: Byte) {
                                                        BLACK(0), RED(1), GREEN(2), YELLOW(3), BLUE(4), MAGENTA(5), CYAN(6), WHITE(7);

                                                        companion object {
                                                        private const val prefix = "u001B"
                                                        const val RESET = "$prefix[0m"
                                                        private val isCompatible = "win" !in System.getProperty("os.name").toLowerCase()
                                                        }

                                                        val regular get() = if (isCompatible) "$prefix[0;3${colorNumber}m" else ""
                                                        val bold get() = if (isCompatible) "$prefix[1;3${colorNumber}m" else ""
                                                        val underline get() = if (isCompatible) "$prefix[4;3${colorNumber}m" else ""
                                                        val background get() = if (isCompatible) "$prefix[4${colorNumber}m" else ""
                                                        val highIntensity get() = if (isCompatible) "$prefix[0;9${colorNumber}m" else ""
                                                        val boldHighIntensity get() = if (isCompatible) "$prefix[1;9${colorNumber}m" else ""
                                                        val backgroundHighIntensity get() = if (isCompatible) "$prefix[0;10${colorNumber}m" else ""
                                                        }


                                                        And then use is as such: (code below showcases the different styles for all colors)



                                                        val sampleText = "This is a sample text"
                                                        enumValues<AnsiColor>().forEach { ansiColor ->
                                                        println("${ansiColor.regular}$sampleText${AnsiColor.RESET}")
                                                        println("${ansiColor.bold}$sampleText${AnsiColor.RESET}")
                                                        println("${ansiColor.underline}$sampleText${AnsiColor.RESET}")
                                                        println("${ansiColor.background}$sampleText${AnsiColor.RESET}")
                                                        println("${ansiColor.highIntensity}$sampleText${AnsiColor.RESET}")
                                                        println("${ansiColor.boldHighIntensity}$sampleText${AnsiColor.RESET}")
                                                        println("${ansiColor.backgroundHighIntensity}$sampleText${AnsiColor.RESET}")
                                                        }


                                                        If running on Windows where these ANSI codes are not supported, the isCompatible check avoids issues by replacing the codes with empty string.






                                                        share|improve this answer


























                                                          0












                                                          0








                                                          0







                                                          If you use Kotlin (which works seamlessly with Java), you can make such an enum:



                                                          enum class AnsiColor(private val colorNumber: Byte) {
                                                          BLACK(0), RED(1), GREEN(2), YELLOW(3), BLUE(4), MAGENTA(5), CYAN(6), WHITE(7);

                                                          companion object {
                                                          private const val prefix = "u001B"
                                                          const val RESET = "$prefix[0m"
                                                          private val isCompatible = "win" !in System.getProperty("os.name").toLowerCase()
                                                          }

                                                          val regular get() = if (isCompatible) "$prefix[0;3${colorNumber}m" else ""
                                                          val bold get() = if (isCompatible) "$prefix[1;3${colorNumber}m" else ""
                                                          val underline get() = if (isCompatible) "$prefix[4;3${colorNumber}m" else ""
                                                          val background get() = if (isCompatible) "$prefix[4${colorNumber}m" else ""
                                                          val highIntensity get() = if (isCompatible) "$prefix[0;9${colorNumber}m" else ""
                                                          val boldHighIntensity get() = if (isCompatible) "$prefix[1;9${colorNumber}m" else ""
                                                          val backgroundHighIntensity get() = if (isCompatible) "$prefix[0;10${colorNumber}m" else ""
                                                          }


                                                          And then use is as such: (code below showcases the different styles for all colors)



                                                          val sampleText = "This is a sample text"
                                                          enumValues<AnsiColor>().forEach { ansiColor ->
                                                          println("${ansiColor.regular}$sampleText${AnsiColor.RESET}")
                                                          println("${ansiColor.bold}$sampleText${AnsiColor.RESET}")
                                                          println("${ansiColor.underline}$sampleText${AnsiColor.RESET}")
                                                          println("${ansiColor.background}$sampleText${AnsiColor.RESET}")
                                                          println("${ansiColor.highIntensity}$sampleText${AnsiColor.RESET}")
                                                          println("${ansiColor.boldHighIntensity}$sampleText${AnsiColor.RESET}")
                                                          println("${ansiColor.backgroundHighIntensity}$sampleText${AnsiColor.RESET}")
                                                          }


                                                          If running on Windows where these ANSI codes are not supported, the isCompatible check avoids issues by replacing the codes with empty string.






                                                          share|improve this answer













                                                          If you use Kotlin (which works seamlessly with Java), you can make such an enum:



                                                          enum class AnsiColor(private val colorNumber: Byte) {
                                                          BLACK(0), RED(1), GREEN(2), YELLOW(3), BLUE(4), MAGENTA(5), CYAN(6), WHITE(7);

                                                          companion object {
                                                          private const val prefix = "u001B"
                                                          const val RESET = "$prefix[0m"
                                                          private val isCompatible = "win" !in System.getProperty("os.name").toLowerCase()
                                                          }

                                                          val regular get() = if (isCompatible) "$prefix[0;3${colorNumber}m" else ""
                                                          val bold get() = if (isCompatible) "$prefix[1;3${colorNumber}m" else ""
                                                          val underline get() = if (isCompatible) "$prefix[4;3${colorNumber}m" else ""
                                                          val background get() = if (isCompatible) "$prefix[4${colorNumber}m" else ""
                                                          val highIntensity get() = if (isCompatible) "$prefix[0;9${colorNumber}m" else ""
                                                          val boldHighIntensity get() = if (isCompatible) "$prefix[1;9${colorNumber}m" else ""
                                                          val backgroundHighIntensity get() = if (isCompatible) "$prefix[0;10${colorNumber}m" else ""
                                                          }


                                                          And then use is as such: (code below showcases the different styles for all colors)



                                                          val sampleText = "This is a sample text"
                                                          enumValues<AnsiColor>().forEach { ansiColor ->
                                                          println("${ansiColor.regular}$sampleText${AnsiColor.RESET}")
                                                          println("${ansiColor.bold}$sampleText${AnsiColor.RESET}")
                                                          println("${ansiColor.underline}$sampleText${AnsiColor.RESET}")
                                                          println("${ansiColor.background}$sampleText${AnsiColor.RESET}")
                                                          println("${ansiColor.highIntensity}$sampleText${AnsiColor.RESET}")
                                                          println("${ansiColor.boldHighIntensity}$sampleText${AnsiColor.RESET}")
                                                          println("${ansiColor.backgroundHighIntensity}$sampleText${AnsiColor.RESET}")
                                                          }


                                                          If running on Windows where these ANSI codes are not supported, the isCompatible check avoids issues by replacing the codes with empty string.







                                                          share|improve this answer












                                                          share|improve this answer



                                                          share|improve this answer










                                                          answered Jan 20 at 0:53









                                                          Louis CADLouis CAD

                                                          5,62812137




                                                          5,62812137























                                                              0














                                                              The best way to color console text is to use ANSI escape codes. In addition of text color, ANSI escape codes allows background color, decorations and more.



                                                              Unix



                                                              If you use springboot, there is a specific enum for text coloring: org.springframework.boot.ansi.AnsiColor



                                                              Jansi library is a bit more advanced (can use all the ANSI escape codes fonctions), provides an API and has a support for Windows using JNA.



                                                              Otherwise, you can manually define your own color, as shown is other responses.



                                                              Windows 10



                                                              Windows 10 (since build 10.0.10586 - nov. 2015) supports ANSI escape codes (MSDN documentation) but it's not enabled by default. To enable it:




                                                              • With SetConsoleMode API, use ENABLE_VIRTUAL_TERMINAL_PROCESSING (0x0400) flag. Jansi uses this option.

                                                              • If SetConsoleMode API is not used, it is possible to change the global registry key HKEY_CURRENT_USERConsoleVirtualTerminalLevel by creating a dword and set it to 0 or 1 for ANSI processing:
                                                                "VirtualTerminalLevel"=dword:00000001


                                                              Before Windows 10



                                                              Windows console does not support ANSI colors. But it's possible to use console which does.






                                                              share|improve this answer




























                                                                0














                                                                The best way to color console text is to use ANSI escape codes. In addition of text color, ANSI escape codes allows background color, decorations and more.



                                                                Unix



                                                                If you use springboot, there is a specific enum for text coloring: org.springframework.boot.ansi.AnsiColor



                                                                Jansi library is a bit more advanced (can use all the ANSI escape codes fonctions), provides an API and has a support for Windows using JNA.



                                                                Otherwise, you can manually define your own color, as shown is other responses.



                                                                Windows 10



                                                                Windows 10 (since build 10.0.10586 - nov. 2015) supports ANSI escape codes (MSDN documentation) but it's not enabled by default. To enable it:




                                                                • With SetConsoleMode API, use ENABLE_VIRTUAL_TERMINAL_PROCESSING (0x0400) flag. Jansi uses this option.

                                                                • If SetConsoleMode API is not used, it is possible to change the global registry key HKEY_CURRENT_USERConsoleVirtualTerminalLevel by creating a dword and set it to 0 or 1 for ANSI processing:
                                                                  "VirtualTerminalLevel"=dword:00000001


                                                                Before Windows 10



                                                                Windows console does not support ANSI colors. But it's possible to use console which does.






                                                                share|improve this answer


























                                                                  0












                                                                  0








                                                                  0







                                                                  The best way to color console text is to use ANSI escape codes. In addition of text color, ANSI escape codes allows background color, decorations and more.



                                                                  Unix



                                                                  If you use springboot, there is a specific enum for text coloring: org.springframework.boot.ansi.AnsiColor



                                                                  Jansi library is a bit more advanced (can use all the ANSI escape codes fonctions), provides an API and has a support for Windows using JNA.



                                                                  Otherwise, you can manually define your own color, as shown is other responses.



                                                                  Windows 10



                                                                  Windows 10 (since build 10.0.10586 - nov. 2015) supports ANSI escape codes (MSDN documentation) but it's not enabled by default. To enable it:




                                                                  • With SetConsoleMode API, use ENABLE_VIRTUAL_TERMINAL_PROCESSING (0x0400) flag. Jansi uses this option.

                                                                  • If SetConsoleMode API is not used, it is possible to change the global registry key HKEY_CURRENT_USERConsoleVirtualTerminalLevel by creating a dword and set it to 0 or 1 for ANSI processing:
                                                                    "VirtualTerminalLevel"=dword:00000001


                                                                  Before Windows 10



                                                                  Windows console does not support ANSI colors. But it's possible to use console which does.






                                                                  share|improve this answer













                                                                  The best way to color console text is to use ANSI escape codes. In addition of text color, ANSI escape codes allows background color, decorations and more.



                                                                  Unix



                                                                  If you use springboot, there is a specific enum for text coloring: org.springframework.boot.ansi.AnsiColor



                                                                  Jansi library is a bit more advanced (can use all the ANSI escape codes fonctions), provides an API and has a support for Windows using JNA.



                                                                  Otherwise, you can manually define your own color, as shown is other responses.



                                                                  Windows 10



                                                                  Windows 10 (since build 10.0.10586 - nov. 2015) supports ANSI escape codes (MSDN documentation) but it's not enabled by default. To enable it:




                                                                  • With SetConsoleMode API, use ENABLE_VIRTUAL_TERMINAL_PROCESSING (0x0400) flag. Jansi uses this option.

                                                                  • If SetConsoleMode API is not used, it is possible to change the global registry key HKEY_CURRENT_USERConsoleVirtualTerminalLevel by creating a dword and set it to 0 or 1 for ANSI processing:
                                                                    "VirtualTerminalLevel"=dword:00000001


                                                                  Before Windows 10



                                                                  Windows console does not support ANSI colors. But it's possible to use console which does.







                                                                  share|improve this answer












                                                                  share|improve this answer



                                                                  share|improve this answer










                                                                  answered Jan 21 at 13:43









                                                                  NayoRNayoR

                                                                  3078




                                                                  3078















                                                                      Popular posts from this blog

                                                                      MongoDB - Not Authorized To Execute Command

                                                                      How to fix TextFormField cause rebuild widget in Flutter

                                                                      Npm cannot find a required file even through it is in the searched directory