利用ANSI转义序列在控制台输出彩色文字

说明:无论什么语言,只要你的终端能够解释ANSI转义序列(大多数的类unix终端仿真器都能够解释ANSI转义序列,win32控制台则不支持),就能够使用ANSI转义序列输出颜色。这个功能看似鸡肋,但只要运用得当,能起点睛之效.

效果:(在STS4控制台输出,主题为Dark linux(WIndow->Preference->General->Appearence->Theme->Dark Linux))

程序:

package com.heyang.util;

public class Renderer {
    public static String paintBlack(String str) {
        return "33[30;4m"+str+"33[0m";
    }
    
    public static String paintRed(String str) {
        return "33[31;4m"+str+"33[0m";
    }
    
    public static String paintGreen(String str) {
        return "33[32;4m"+str+"33[0m";
    }
    
    public static String paintBrown(String str) {
        return "33[33;4m"+str+"33[0m";
    }
    
    public static String paintBlue(String str) {
        return "33[34;4m"+str+"33[0m";
    }
    
    public static String paintPurple(String str) {
        return "33[35;4m"+str+"33[0m";
    }
    
    public static String paintAqua(String str) {
        return "33[36;4m"+str+"33[0m";
    }
    
    public static String paintWhite(String str) {
        return "33[37;4m"+str+"33[0m";
    }
    
    public static void main(String[] args) {
        System.out.println(paintBlack("测试文字"));
        System.out.println(paintRed("测试文字"));
        System.out.println(paintGreen("测试文字"));
        System.out.println(paintBrown("测试文字"));
        System.out.println(paintBlue("测试文字"));
        System.out.println(paintPurple("测试文字"));
        System.out.println(paintAqua("测试文字"));
        System.out.println(paintWhite("测试文字"));
    }
}

--2020年5月20日--

参考文档:

1.https://www.cnblogs.com/opangle/p/4082692.html

2.https://blog.csdn.net/web_longboss/article/details/79827136

原文地址:https://www.cnblogs.com/heyang78/p/12921333.html