用另一种颜色显示System.out.println输出
我有一个很大的项目要调试,我想知道是否有我可以用来改变eclipse输出中的System.out.println
方法
例如 :
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");
为了更好的可读性。
EDIT
与sysout我有这个
与syserr我有这个
在Eclipse中,最简单的方法是将System.err.println
用于你想要变成红色的行 – 我相信这是默认的。 (您可以在首选项 – >运行/调试 – >控制台中更改它。
当然,当在真正的控制台中运行时,这种差异不会出现,但我不认为 Eclipse控制台支持ANSI颜色转义序列等。
编辑:对于Windows控制台,我希望ANSI转义序列能够工作。 它不是非常便携,但如果这不是问题,你可以创建一个类来适当地封装转义序列,所以你可以调用类似的东西:
ansiConsole.printRed("sample line in red"); ansiConsole.printBlue("sample line in blue");
(我可能会让这些方法返回到每次调用后的“当前”颜色。)
编辑:正如评论中所述, Jansi库已经存在,所以你不妨使用它。 它没有上述方法,但我相信它仍然可以做你想要的……
请参阅以下代码。另请参阅此链接以获取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"); } }
请看看Jansi ( Jansi的Github )
Jansi是一个小型的java库,允许您使用ANSI转义序列来格式化您的控制台输出,甚至可以在Windows上运行。
您似乎想要使用不同颜色突出显示System.out.println()
的输出以帮助您进行调试,为什么不将System.out
所有输出重定向到程序入口点中的文件:
FileOutputStream fis = new FileOutputStream(new File("log.txt")); PrintStream out = new PrintStream(fis); System.setOut(out);
然后使用一些免费的便携式实时日志文件监控工具,它具有可配置的突出显示function,使用不同的颜色,如BareTail ,来查看此文件。