【发布时间】:2015-02-23 18:06:10
【问题描述】:
我是 Java 新手,需要您的帮助。我正在尝试在运行时更改 Eclipse 控制台中文本的颜色。我提到了其中一篇文章并试图遵循它。但输出显示一框 unicode 转义字符,文本颜色保持不变。
public static void main(String[] args)
{
System.out.println((char)27 + "[31mTest red color");
}
输出:
|00|
|1B| [31m测试红色
注意事项:
- 对于输出,我无法上传图片,所以我输入了 [001B]。
- 控制台使用 UTF-8 编码。
更新 在 Jarrod 评论可能重复的问题之后,这是我的更新 - 这个问题主要是针对 ANSI 字符不起作用而不是文本颜色,所以我更新了这个问题。
【问题讨论】:
-
您使用的是什么操作系统?这些是 ANSI 转义序列,并不适用于每个操作系统。
-
如果您真的想要这种功能,您可能应该只构建一个 GUI。查看 Swing 和 JavaFX。
-
嗨凯文,感谢您的回复!我在 Ubuntu Linux 上使用 eclipse。我还没有构建任何 API,但我会搜索并使用 Swing、JavaFX 并看看它是否有效。
-
尝试使用支持 ANSI 的终端,例如 gnome-terminal 模拟器。它可以工作,但您可能会从不支持 ANSI 转义的 Eclipse 输出窗口中看到结果。
-
@KevinWorkman 除了 GUI,在 2015 年拥有能够输出颜色的命令行工具是一件好事。
标签: java eclipse ubuntu character-encoding ansi-escape