微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何将表格数据格式化为Java中的文本?

我想从任意数据集对象模型生成格式良好的表格文本.在 Java中有一个很好的库吗?

具体来说,我希望输出格式化为命令行数据管理工具,如CLI for MysqL.例:

+---------+--------------+------+-----+---------+-------+
| Field   | Type         | Null | Key | Default | Extra |
+---------+--------------+------+-----+---------+-------+
| name    | varchar(100) | YES  |     | NULL    |       |
| release | year(4)      | YES  |     | NULL    |       |
| studio  | varchar(50)  | YES  |     | NULL    |       |
| review  | varchar(50)  | YES  |     | NULL    |       |
| gross   | int(11)      | YES  |     | NULL    |       |
+---------+--------------+------+-----+---------+-------+

一个主要的挑战是,在开始遍历数据之前,我不会自动知道最大列宽.此外,还有很多边缘情况,例如处理非常大的值长度和大量的行和列.

如果我必须自己构建它,我想我会使用String.format,并且我需要在开始输出之前预分析完整的数据集.虽然这是一个非常低级的编码,所以我很想找到一个已经解决了这个问题的好库.

解决方法

查看 TableFormatter:它似乎可以执行格式化表格数据的操作.源代码也可用.您可以使用流畅的接口方法将行和单元格附加到表中.一个例子如下:
TableFormatter tf = new SimpleTableFormatter(true) // true = show border
        .nextRow()
            .nextCell()
                .addLine("Field")
            .nextCell()
                .addLine("Type")

因此,它将以正确的格式构建单元格并相应地调整空白.它还允许您对单元格内的文本进行基本对齐(中心,顶部,底部)

原文地址:https://www.jb51.cc/java/120533.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐