如何根据控制台的值更改控制台中字符串的颜色。例如:如果's'是在类中声明的字符串。在java中更改字符串的颜色
我有一个方法返回(成功或失败)使用if else。 现在我想将方法的返回值赋给's'并更改它在控制台中显示的颜色。 即,如果'成功'。印在绿色等;
如何根据控制台的值更改控制台中字符串的颜色。例如:如果's'是在类中声明的字符串。在java中更改字符串的颜色
我有一个方法返回(成功或失败)使用if else。 现在我想将方法的返回值赋给's'并更改它在控制台中显示的颜色。 即,如果'成功'。印在绿色等;
一个字符串本身没有任何格式信息。如何以特定的方式显示字符串将取决于输出上下文 - 例如,在控制台中,您可以使用可以使用ANSI escape sequences(如果您的控制台支持它们);在HTML中,您将使用样式(或类似);在Swing UI中,您可能会更改控件的前景色。
所以,如果你知道你打算使用终端/控制台,尝试我链接到的ANSI转义代码 - 但要知道,他们不会普遍工作。
标准Java文本控制台是跨平台的,所以它本身不支持颜色。根据您的平台,您可以使用不同的转义码等来获得所需的结果,但所有这些都很容易出错,并且涉及大量额外的工作。
这里有一个建议:
给这个Jansi库(http://jansi.fusesource.org/)一抡。
您可以在这里ANSI代码http://www.ioncannon.net/ruby/101/fun-with-ansi-escape-codes/
随着Jansi库的详细读了,你应该能够如你所愿而影响了你的文字,例如:
AnsiConsole.systemInstall();
AnsiConsole.out.println("\033[32mHowdy");
上面的代码打印你好在绿色,在控制台,虽然这不适合在IDE内工作。但是,当我从命令行在我的机器上运行它时,它按预期工作。
祝你好运!
这高度依赖于您正在使用的终端。 – aioobe