用另一种颜色显示System.out.println输出

Was*_*RAR 9 java eclipse colors println

我有一个很大的项目要调试,我想知道是否有我可以用来改变System.out.printlneclipse输出中的方法

例如 :

System.out.println("I want this to be red");
System.out.println("I want this to be blue");
System.out.println("I want this to be yellow");
System.out.println("I want this to be magenta");
Run Code Online (Sandbox Code Playgroud)

为了更好的可读性.

EDIT

与sysout我有这个 SYSOUT

与syserr我有这个 SYSERR

Jon*_*eet 21

在Eclipse中,最简单的方法是使用System.err.println你想要变成红色的行 - 我相信这是默认的.(您可以在首选项 - >运行/调试 - >控制台中更改它.

当然,当在真正的控制台中运行时,这种差异不会出现,但我不认为 Eclipse控制台支持ANSI颜色转义序列等.

编辑:对于Windows控制台,我希望ANSI转义序列能够工作.它不是非常便携,但如果这不是问题,你可以创建一个类来适当地封装转义序列,所以你可以调用类似的东西:

ansiConsole.printRed("sample line in red");
ansiConsole.printBlue("sample line in blue");
Run Code Online (Sandbox Code Playgroud)

(我可能会让这些方法返回到每次调用后的"当前"颜色.)

编辑:正如评论中所述,Jansi库已经存在,所以你不妨使用它.它没有上面描述的方法,但我相信它仍然可以做你想要的......


小智 7

请参阅以下代码.另请参阅此链接以获取ANSI颜色代码. http://en.wikipedia.org/wiki/ANSI_escape_code

public class ColourConsoleDemo {
    public static void main(String[] args) {
        // TODO code application logic here
        System.out.println("\033[0m BLACK");
        System.out.println("\033[31m RED");
        System.out.println("\033[32m GREEN");
        System.out.println("\033[33m YELLOW");
        System.out.println("\033[34m BLUE");
        System.out.println("\033[35m MAGENTA");
        System.out.println("\033[36m CYAN");
        System.out.println("\033[37m WHITE");
    }   
}
Run Code Online (Sandbox Code Playgroud)

  • 我没有得到颜色,只有"?[32mSome测试文本?[0m"显示在我的eclipse控制台中 (4认同)
  • 实际上 `\033[0m` 代表重置。 (2认同)