【发布时间】:2016-12-09 09:24:34
【问题描述】:
我正在用 Java 构建一个程序,该程序使用 ANSI 转义码使用不同颜色的菜单。类似的东西
System.out.println("\u001B[36m"+"Menu option"+"\u001B[0m");
问题是我想检查将要执行代码的控制台是否支持使用此代码,因此如果不支持,请打印没有代码的替代版本。
这将类似于:
if(console.supportsANSICode){
System.out.println("\u001B[36m"+"Menu option"+"\u001B[0m");
}
else{
System.out.println("Menu option");
}
java中有没有方法可以检查这个?
【问题讨论】:
-
重点是,检查控制台是否支持 ANSI 转义码并不是最好的方法。实际上,您必须在
System.out编写器上使用PrintWriter,以便您可以在其上设置编码类型