繁体   English   中英

将动态生成的表导出为ex​​cel

[英]Exporting a dynamically generated table to excel

我有一个Java应用程序,其中报表是以表格的形式动态生成的。 我需要在网页上有一个按钮,单击它会将表导出到Excel。 该表必须由用户在客户端保存。 我该如何实现此功能? Apache POI API会有用吗?

与此同时,还有一个客户端库( XLSX.js )可用。 当你使用像可能是得心应手数据表与客户端筛选和排序。

我过去成功使用了POI ,但它有它的怪癖。 我使用它的最好方法是在服务器中有一个包含所有格式,颜色等的“模板”文件,并在导出时使用您的数据进行复制和填充。

但是,如果您的数据是一个简单的以列为单位的表,并且您不必担心格式和数据类型,为什么不以纯文本格式导出数据呢? (CSV格式)这可以通过Excel打开,在导出数据时,在提高内存使用速度方面效率会更高。

生成它也会简单得多,你可以使用自己的POJO生成器,这将更容易测试。

仅当用户期望专用日期格式或整数/文本单元格之间的区别时,才使用POI。 或者,如果您需要动态计算单元格(使用公式)如果不需要,您可以将所有内容导出为字符串,Excel将在打开csv文件时找到它的方式。

我的一些同事使用POI API来输出非常大的报告。 我想现在它是最好的一个。

还可以考虑编写HTML格式表(Excel也可以读取,包括比CSV更好的格式化)。

并且,查看JExcelAPI,我认为它比POI更容易使用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM