我有一个重新创建unix cal程序的任务,除了一部分外,相当简单。在当天,它突出了数字。我不知道该怎么做。如何在Java中做到这一点?
图像:
答案 0 :(得分:2)
ANSI颜色代码
通过展开转义序列来设置提示的颜色 “\ e [sm”,其中s是以分号分隔的ANSI颜色代码列表: “\ e [31; 44; 1m”将前景色设为红色,背景为 蓝色,粗体字体; (“\ e”是ASCII Escape 字符。不要忘记用“m”终止序列 字符。)
环境变量中的二进制序列需要通过以下方式设置 它们的宽度为零的指标,否则外壳不会 正确计算提示的宽度。 Bash包含了这样的东西 用斜杠括号“[..]”,而Tcsh使用百分比括号“%{.. %}”。
The codes:
0 restore default color
1 brighter
2 dimmer
4 underlined text
5 flashing text
7 reverse video
black red green yellow blue purple cyan white
foreground 30 31 32 33 34 35 36 37
background 40 41 42 43 44 45 46 47
来自http://zipcon.net/~swhite/docs/computers/linux/shell_prompts.html
因此,为了通过Java执行此操作,您需要设置
System.out.println(characterCode + character);
其中String characterCode = "\033[31;44;1m";
和char character = 'A';
你得到一个A
,前景色设置为红色,背景为蓝色,字体为粗体......
编辑:Xubuntu中的测试结果
public static void main(String[] args) {
char character = 'A';
String characterCode;
for (int foreground = 30; foreground < 38; foreground++) {
for (int background = 40; background < 48; background++) {
characterCode = "\033[" + foreground + ";" + background + ";1m";
System.out.print(characterCode + character);
}
System.out.println();
}
}