Java Console/控制台 打印表格
功能:控制台打印表格,支持字段动态长度,左对齐,右对齐,居中,设置最大列长,设置列间隔符,设置最多打印多少行。
类下载地址:http://download.csdn.net/download/j506825719/10211082
简单使用方法:在new的时候,给定列名,和列值List,之后调用printTable就得到了表格字符串。
进阶使用方法:查看所有public方法,就能知道还有什么功能了。
效果图如下:

接口如下:
-
package com.benjamin.debug.extendclass;
-
-
import java.awt.Font;
-
import java.util.ArrayList;
-
import java.util.HashMap;
-
import java.util.List;
-
import java.util.Map;
-
-
/**
-
*
-
* @author Benjamin su
-
* QQ:506825719
-
* Email:jiang506825719@qq.com
-
*
-
*/
-
public class TextTable {
-
//这个变量只是用来获取字符串的标准长度,修改无意义
-
private static Font font = new Font("宋体", Font.PLAIN, 16);
-
private String columnInterval="|";//列之间的间隔符号
-
private AlignType at=AlignType.Left;
-
private Integer MaxValueLenth=40;
-
private Map<String,Integer> maxFieldValueLengthMap=null;
-
List<String> columnNameList=null;
-
List<List<String>> columnValueList=null;
-
private boolean isException=false;
-
private Integer pringtTableRow=30;
-
/**
-
* 初始化时不给定列长度Map
-
* @param columnNameListTmp
-
* @param columnValueListTmp
-
*/
-
public TextTable(List<String> columnNameListTmp,List<List<String>> columnValueListTmp){
-
}
-
/**
-
* 初始化时给定列长度Map
-
* @param columnNameListTmp
-
* @param columnValueListTmp
-
* @param maxFieldValueLengthMapTmp
-
*/
-
public TextTable(List<String> columnNameListTmp,List<List<String>> columnValueListTmp,Map<String,Integer> maxFieldValueLengthMapTmp){
-
}
-
-
/**
-
* 获得处理后的表格字符串
-
* @return
-
*/
-
public String printTable(){
-
}
-
/**
-
* 获取一个字符串的标准长度是多少
-
* A2*. 这样是四个标准长度
-
* 系统系统 这样是8个标准长度
-
* @param str
-
* @return
-
*/
-
public static Integer getStrPixelsLenth(String str){
-
}
-
/**
-
* 让列值居中
-
* @param columnValue
-
* @param ColumnPixelsLenth
-
* @return
-
*/
-
private String makeValueCenter(String columnValue,Integer repaireStrLength){
-
}
-
/**
-
* 让列值左对齐
-
* @param columnValue
-
* @param ColumnPixelsLenth
-
* @return
-
*/
-
private String makeValueLeft(String columnValue,Integer repaireStrLength){
-
}
-
/**
-
* 让列值右对齐
-
* @param columnValue
-
* @param ColumnPixelsLenth
-
* @return
-
*/
-
private String makeValueRight(String columnValue,Integer repaireStrLength){
-
}
-
/**
-
* 获取用于填充的字符串
-
* @param str
-
* @param PixelsLenth
-
* @return
-
*/
-
private static String getRepairStr(char str,Integer PixelsLenth){
-
}
-
/**
-
* 根据像素长度来切割字符串
-
* @param str
-
* @param PixelsLenth
-
* @return
-
*/
-
private static String subStrByPixels(String str,Integer PixelsLenth){
-
}
-
/**
-
* 让列值对齐(左对齐OR居中OR右对齐)
-
* @param columnValue
-
* @param ColumnPixelsLenth
-
* @return
-
*/
-
private String makeValueAlign(String columnValue,Integer ColumnPixelsLenth){
-
}
-
/**
-
* 设置列与列之间用什么间隔,默认是|
-
* @param columnInterval
-
*/
-
public void setColumnInterval(String columnInterval) {
-
}
-
/**
-
* 设置列值最大长度,超过则用省略号代替
-
* @param maxValueLenth
-
*/
-
public void setMaxValueLenth(Integer maxValueLenth) {
-
}
-
/**
-
* 如果不指定列长度Map,这里将自动计算
-
* @param columnNameListTmp
-
* @param columnValueListTmp
-
* @param maxFieldValueLengthMapTmp
-
*/
-
private void setMaxFieldValueLengthMap(List<String> columnNameListTmp,List<List<String>> columnValueListTmp,Map<String, Integer> maxFieldValueLengthMapTmp) {
-
}
-
/**
-
* 设置最多打印多少行
-
* @param pringtTableRow
-
*/
-
public void setPringtTableRow(Integer pringtTableRow) {
-
}
-
/**
-
* 设置对齐方式
-
* @param at
-
*/
-
public void setAt(AlignType at) {
-
}
-
public enum AlignType {
-
Left,
-
Center,
-
Rigth
-
}
-
}
原文地址:https://blog.csdn.net/j506825719/article/details/78996659
Java Console/控制台 打印表格的更多相关文章
- console.table(),在控制台以表格形式输出对象
今天给大家安利一个属性,console.table(). 它的作用在控制台以表格的形式显示object.这样看起来是不是更方便了呢. var aaa = [ {index:0,name:"1 ...
- Postman----打开postman console控制台,查看接口测试打印log
经常在脚本中使用变量时,你可能需要看到变量获取到的值,你可以使用Postman Console去实现的.操作步骤:应用菜单-->View--->Show Postman Console,去 ...
- 控制台console不打印信息的解决办法
一直用控制台调试,突然不知道怎么回事看不到控制台输出的信息了: 需要检查下面几方面的问题: 1:我的就属于第一个问题,不知道怎么搜索的时候就改变了Filter; 2:确保以上选项是勾选的 3:点击设置 ...
- mybatis3.2.3+spring3 控制台打印sql解决办法
学习mybatis的时候遇到打印不出sql 的问题,在这里做个总结: 1:首先log4j.properties这样配置: log4j.rootLogger=DEBUG,console,R log4j. ...
- VS2010-win32下cocos2dx控制台打印的方法
在xcode中 直接使用printf 或者 cout<<""<<endl;可以直接在控制台打印 但是在VS2010 却死活不好用 真郁闷 ------ ...
- node 在控制台打印有色彩的输出
在学习 node 过程中,因为没有找到有断点的调试方法,只能退而次之,在控制台打印调试. 但整个控制台的输出都是一种颜色,有时候很难找到自己需要的信息,这时,有颜色的打印就会帮上很大的忙. conso ...
- Javascript控制台打印Object对象
Javascript控制台打印Object对象 做项目的时候遇到一个问题,在调试代码时需要打印对象来查看具体数值,想了各种方法也没有实现,最后查资料知道了可以使用JSON.stringify()将ob ...
- vc++2010如何新建项目并在控制台打印helloworld
关于写c++使用什么集成开发环境的问题其实挺纠结的.我找了好久找到codeblocks,发现这款IDE还是最适合用在最标准的c++语法环境中.其实先前装过vs2015旗舰版,但是这款软件太大了,非常消 ...
- Console控制台的正确打开方式
Console控制台的正确打开方式 console对象提供了访问浏览器调试模式的信息到控制台 -- Console对象 |-- assert() 如果第一个参数断言为false,则在控制台输出错误信息 ...
随机推荐
- python 面向对象(类)--学习笔记
面向对象是一种编程方式, 主要集中在类和对象的两个概念 python 中的类符合封装, 继承, 多态的特征 类 是一个模板, 是n多函数的集成 对象 是类的实例化 类的成员分为三大类:字段.方法.属性 ...
- 机器学习-线性回归(基于R语言)
基本概念 利用线性的方法,模拟因变量与一个或多个自变量之间的关系.自变量是模型输入值,因变量是模型基于自变量的输出值. 因变量是自变量线性叠加和的结果. 线性回归模型背后的逻辑——最小二乘法计算线性系 ...
- 使用MyEclipse创建Servlet
https://www.yiibai.com/servlet/creating-servlet-in-myeclipse-ide.html 如何在myeclipse IDE中创建Servlet? 要在 ...
- Go的学习 sort
1.排序操作主要都在 sort包中,导入就可以使用了 2.sort.Ints对整数进行排序 package main; import ( "fmt" "sort" ...
- BZOJ2213 & LOJ2161 「POI2011 R2 Day1」Difference 最大子段和
题目传送门 https://lydsy.com/JudgeOnline/problem.php?id=2213 https://loj.ac/problem/2161 题解 做一道简单题来放松一下. ...
- cmd退出python
cmd中如何退出Python (1)在命令行上输入exit() (2)在命令行上输入quit() (3)ctrl+Z 然后回车
- Hadoop的配置文件
hadoop-env.sh:脚本中所用到的环境变量,以运行Hadoop mapred-env.sh:脚本中所用到的环境变量,以运行mapreduce yarn-env.sh:脚本中所用到的环境变量,以 ...
- 设置Oracle PL/SQL时间显示格式NLS_TIMESTAMP_FORMAT
Oracle中TIMESTAMP时间的显示格式 Oracle数据库的时间字段我们通常是使用timestamp 格式,在未做设置前, 查询出来的数据类似于“27-1月 -08 12.04.35.87 ...
- eclipse 启动项目 报错 java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderLis(亲测)
[原因] 重新 clean 和 install 了maven项目后就启动报错了.解决如下: 右键项目: 属性properties 删除掉引用的其他jar 选择 Deployment Assembl ...
- Oracle中表连接的运行原理
Oracle优化器会自动选择以下三种方式的一种运行表连接,但在数据环境上配合强化选择合适的方式或强制使用某种方式是SQL优化的需要: NESTED LOOP 对于被连接的数据子集较小的情况, ...