让groovy控制台程序拥有彩色输出"面孔"
Posted zhangjianying
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了让groovy控制台程序拥有彩色输出"面孔"相关的知识,希望对你有一定的参考价值。
结合JNA的使用可以让groovy的控制台程序拥有linux终端一般的彩色数据效果。需要jna.jar包放到classpath可以找到的路径下就可以了。
运行一下就可以看到彩色数据的效果了。其中color的参数的具体颜色,可以打开一个控制台然后查看属性
黑色 是数字 0 以此类推
最后我再这个基础上改了一个数据比对程序,下面是效果图
- import com.sun.jna.win32.StdCallLibrary;
- import com.sun.jna.*;
- public interface Kernel32 extends StdCallLibrary {
- Kernel32 INSTANCE = (Kernel32) Native.loadLibrary("kernel32", Kernel32.class);
- int GetStdHandle(int stdHand);
- boolean SetConsoleTextAttribute(int hConsoleOutput, int textAtt);
- }
- def out={color,str->
- int ptr= Kernel32.INSTANCE.GetStdHandle(-11);
- Kernel32.INSTANCE.SetConsoleTextAttribute(ptr, color);
- print(str);
- Kernel32.INSTANCE.SetConsoleTextAttribute(ptr, 3);
- }
- out (13,"windows ?"+ Platform.isWindows());
- out (14,"X11 ?"+ Platform.isX11());
最后我再这个基础上改了一个数据比对程序,下面是效果图
以上是关于让groovy控制台程序拥有彩色输出"面孔"的主要内容,如果未能解决你的问题,请参考以下文章
python通过colorama模块在控制台输出彩色文字的方法