【发布时间】:2018-04-28 11:57:08
【问题描述】:
我想知道是否可以从我的 Java 代码中为 IntelliJ 的运行控制台中的输出着色。 例如,如果我有类似
System.out.println("Error: " + message);
我想用红色显示“错误”,其余的用不同的颜色显示。或者,将整行作为一种颜色也可以,并且已经比将所有内容都使用一种颜色有了很大的改进。
提前谢谢你!
编辑:因此,感谢一位善良的 redditor,答案是这里的链接 Stack Overflow - List of ANSI color escape sequences 。
虽然我不认为我完全在那里(IntelliJ 提供的颜色选项比我能够开始工作的要多),但我能够获得 8 种颜色来工作。我现在创建了一个小辅助函数来轻松地将文本打印到控制台:
public static void colorSystemOut(String text, Color color,
boolean bold, boolean underlined) {
StringBuilder cString = new StringBuilder("\033[");
if(color == Color.WHITE) {
cString.append("30");
}
else if(color == Color.RED) {
cString.append("31");
}
else if(color == Color.GREEN) {
cString.append("32");
}
else if(color == Color.YELLOW) {
cString.append("33");
}
else if(color == Color.BLUE) {
cString.append("34");
}
else if(color == Color.MAGENTA) {
cString.append("35");
}
else if(color == Color.CYAN) {
cString.append("36");
}
else if(color == Color.GRAY) {
cString.append("37");
}
else {
cString.append("30");
}
if(bold) { cString.append(";1"); }
if(underlined) { cString.append(";4"); }
cString.append(";0m" + text + "\033[0m");
System.out.print(cString.toString());
}
也许它不是最有效的,你有改进它的建议,但现在我很高兴它有效!
【问题讨论】:
-
如果作者询问高亮错误,我不同意这是重复的......
-
遗憾的是,链接的答案并没有真正帮助我。除了最后一个答案是 4 岁之外,我仍然不知道哪个对我的情况是正确的以及如何实际做到这一点。在发布之前我实际上已经看到了这个并找到了设置 Preferences > Editor > Colors & Fonts > Console Colors (如果这是我应该使用的,我不知道),但我仍然不知道如何使这项工作。
-
复制什么?为什么在不提及重复问题的情况下关闭重复问题?
标签: java intellij-idea