最近有个需求是关于导出Excel数据透视表的,先写了一个简单的demo,有不足之处还请大佬讲解

1.首先,我引入的poi是3.15版本的

pom文件:

org.apache.poi

poi

3.15

org.apache.poi

poi-ooxml

3.15

2.在磁盘中,创建一个模板

模板位置自定义,然后在模板中添加数据(用这些数据生成数据透视表)

注意:这里数据的位置区域是A1:E4,下面在代码中用到

逻辑代码:

public class PoiPivotal {

public static void main(String[] args) throws IOException {

//创建一个模板文件,里面自己手动填入数据

FileInputStream file = new FileInputStream(new File("D:/company/a.xlsx"));

XSSFWorkbook workbook = new XSSFWorkbook(file);

XSSFSheet sheet = workbook.getSheetAt(0);

//获取sheet页数据行数

int num = sheet.getLastRowNum();

//手动填充数据的区域

AreaReference a=new AreaReference("A1:E4");

//数据透视表生成为位置

CellReference b=new CellReference("I5");

//生成数据透视图

XSSFPivotTable pivotTable = sheet.createPivotTable(a,b);

//添加行标签

pivotTable.addRowLabel(0);

//添加列数据

//pivotTable.addDataColumn(0, true);

//pivotTable.addDataColumn(1, true);

//指定生成文件位置

FileOutputStream output_file = new FileOutputStream(new File("D:/company/"+"POI_XLS_Pivot_Example.xlsx"));

workbook.write(output_file);//write excel document to output stream

output_file.close(); //close the file

}

}

代码中有详细的注释,但是我在用 pivotTable.addDataColumn(0, true) 添加列数据时,生成的文件打不开,我也不知道为什么,还请大佬指教!!!!

最后运行,生成文件

打开文件后,发现数据透视表默认没有展示数据列,因为代码中 pivotTable.addDataColumn(0, true) 的问题。需要手动调整数据透视表

在右侧栏,把这些都勾选上

一个简单的数据透视表,就这样磕磕绊绊的完成了。

最后还请大佬多多指教代码实现中存在的问题!!

java poi 数据透视_java 通过 poi pivotTable 实现 数据透视表相关推荐

  1. java读取excel2010文件_java的poi技术读取Excel[2003-2007,2010]

    这篇blog主要是讲述java中poi读取excel,而excel的版本包括:2003-2007和2010两个版本, 即excel的后缀名为:xls和xlsx. 你也可以在 : 下面是本文的项目结构: ...

  2. java poi word 表格_java 使用POI 读写word 表格

    导读热词 下面是编程之家 jb51.cc 通过网络收集整理的代码片段. 编程之家小编现在分享给大家,也给大家做个参考. import java.io.FileInputStream; import j ...

  3. java 读取ppt文件_java使用poi读取ppt文件和poi读取excel、word示例

    Apache的POI项目可以用来处理MS Office文档,codeplex上还有一个它的.net版本.POI项目可创建和维护操作各种基于OOXML和OLE2文件格式的Java API.大多数MS O ...

  4. java设置excel行间距_java用POI设置Excel的列宽

    需求:将某个excel中的某一列列宽设置为35(该数值是Excel中显示的列宽值). poi中设置列宽的方法为: HSSFSheet.setColumnWidth(int columnIndex, i ...

  5. java json解析 代码_Java构造和解析Json数据的两种方法详解一

    在www.json.org上公布了很多JAVA下的json构造和解析工具,其中org.json和json-lib比较简单,两者使用上差不多但还是有些区别.下面首先介绍用json-lib构造和解析Jso ...

  6. java excel 透视_java基于poi导出excel透视表代码实例

    这篇文章主要介绍了java基于poi导出excel透视表代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 从前,我是一个前端程序猿,怀着对打通 ...

  7. java excel 列数_JAVA使用POI获取Excel的列数与行数

    前言 报表输出是Java应用开发中经常涉及的内容,而一般的报表往往缺乏通用性,不方便用户进行个性化编辑.Java程序由于其跨平台特性,不能直接操纵Excel.因此,本文探讨一下POI视线Java程序进 ...

  8. java excel 兼容问题_Java之POI读取Excel的解决兼容性问题

    在Java中,使用POI来进行excel的读取和解析是常用的一种做法:在office的excel中存在2007,2003两种不同的格式,通常情况下是以xls/xlsx的不同后缀来区分的,但用户可能不知 ...

  9. java poi exce 移动_JAVA使用POI操作excel

    这里提一下,java操作excel的组件除了apache的poi,还有jexcelapi(jxl),其中poi组件的获取地址为poi.apache.org. poi组件中常用的类有HSSFworkbo ...

  10. java excel 导出图片_JAVA 使用 POI 导出 EXCEL 自定义背景颜色

    开发中常用表格导入和导出 Excel 是常见的功能. 在这里分享下使用 POI 导出表格的简单实现,也是为大家提供个思路吧,抛砖引玉,话不多说直接上代码. 1.项目引入 maven 依赖 <!- ...

最新文章

  1. 【Android】AsyncTask异步类
  2. python3安装cocos2d_(3)在Windows7上搭建Cocos2d-x
  3. stm32f030cc 替换 stm32f030c8 后程序下载失败问题
  4. 【Linux系统编程】进程间通信--消息队列
  5. 性能相差极大的SQL语句
  6. 使用 Azure Web 应用防火墙拦截黑客攻击
  7. 为什么C++永不过时?
  8. jQuery 基本效果
  9. CodeLite+TDM-GCC调试C++程序,断点无效问题
  10. Visio—如何画虚线?
  11. Matlab图像处理—锐化滤波器
  12. 91位图和bigemap哪个好用
  13. 大庆金桥:基于 SpreadJS 开发实现计量器具检定证书的在线生成与打印
  14. http状态404 vscode_HTTP常见状态码(404、400、500)等错误
  15. 计算机网络调试记录表,计算机网络管理员中级操作技能考核评分记录表.doc
  16. 计算机音乐专业考研,武汉音乐学院2021年硕士研究生招生考试《计算机音乐作曲》考试大纲...
  17. webdriver中的等待——主要讲解WebDriverWait()
  18. 国产桌面操作系统到底怎么做才能有戏?
  19. Kafka完美解决:Error while executing topic command:Replication factor: 1 larger than available brokers:0
  20. java向前缩进的快捷键_C++(十四) — 常用快捷键总结

热门文章

  1. spark标签计算及用户画像应用
  2. docker tomcat 多开 实例_Docker快速验证tomcat单机多实例方案
  3. stm32程序flash下载和sram运行
  4. Ubuntu14.04 学习一:adobe Flash 下载和安装
  5. IDCC2018|上海数据港股份有限公司副总裁、数据中心首席架构师王海峰:标杆管理驱动数据中心建设变革...
  6. js原生 在线客服功能
  7. 《python股票量化交易从入门到实践》摘要
  8. 巧用Excel按照某一列进行整体排序
  9. java怎么画八卦图_八卦图怎么画 最正确的八卦图
  10. C# 单例模式的五种写法