1、依赖包 jansi 用于控制台banner颜色更改
<!-- https://mvnrepository.com/artifact/org.fusesource.jansi/jansi -->
<dependency>
<groupId>org.fusesource.jansi</groupId>
<artifactId>jansi</artifactId>
<version>1.11</version>
</dependency>
2、自定义banner
3、java读取&显示
3.1 工具类
package banner;
import org.fusesource.jansi.Ansi;
import org.fusesource.jansi.AnsiConsole;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import static org.fusesource.jansi.Ansi.Color.*;
import static org.fusesource.jansi.Ansi.ansi;
/**
* @Author: vua
* @Date: Created on 2019-08-17
* @Description:
**/
public class BannerHelper {
public static void banner(String path,int color_index){
Ansi.Color color;
switch (color_index){
case 0:color=BLACK;break;
case 1:color=RED;break;
case 2:color=GREEN;break;
case 3:color=YELLOW;break;
case 4:color=BLUE;break;
case 5:color=MAGENTA;break;
case 6:color=CYAN;break;
case 7:color=WHITE;break;
default:color=DEFAULT;
}
BufferedReader in= null;
AnsiConsole.systemInstall();
try {
in = new BufferedReader(new FileReader(new File(path)));
String str="";
while ((str=in.readLine())!=null){
System.out.println(ansi().fg(color).a(str).reset());
}
} catch (Exception e) {
e.printStackTrace();
}finally {
if(in!=null) {
try {
in.close();
} catch (IOException e) {
e.printStackTrace();
}
}
AnsiConsole.systemUninstall();
}
}
}
3.2 测试类
package banner;
import static banner.BannerHelper.banner;
/**
* @Author: vua
* @Date: Created on 2019-08-17
* @Description:
**/
public class BannerTestDemo {
public static void main(String[] args) {
banner("./banner.txt",1);
}
}