POI XSSFWorkbook 操作Excel 写入二维表格
2018-03-12 11:50
246 查看
项目经理安排了一个活,让我修改一下原来的excel生成规则。
以前也接触过,就是用POI包下面的XSSFWorkbook 操作就可以了。但是这里面涉及到一个excel的二维表数据的实现。
以下是我的实现的一个思路,当然也可以用其他方式实现。
从数据库查出来的数据是这样的:
我需要在excel表格显示成这样:
这里包含一些中英文的处理,这里就不说了。
先从数据看获取数据,把出发地、目的地的数据放到hashmap中,(“出发地”,“总天数”)、(“目的地”,“总天数”),称为A和B吧。
再从数据库group by 出发地,目的地获取数据库,并将数据变成(“出发地-目的地”,“总天数”)的hashmap,称为C。
准备工作到此结束,开始往excel写数据。(还有一部分Total Days的处理,也不详细说了,比较简单)
(1)将出发地的数据写上去。就是A的key值。
(2)再写目的地的数据。就是B的key值。
(3)最重要的一步。(其实就是套俩for循环)。
for(Object key1 : A.keySet() ){
for(Object key2 : B.keySet() ){
String key = key1+"-"+kye2
1.判断C中是否包含key
2.若包含,输出值,若不包含,输出‘0’。
}
}
最后就变成这样了。
以前也接触过,就是用POI包下面的XSSFWorkbook 操作就可以了。但是这里面涉及到一个excel的二维表数据的实现。
以下是我的实现的一个思路,当然也可以用其他方式实现。
从数据库查出来的数据是这样的:
我需要在excel表格显示成这样:
这里包含一些中英文的处理,这里就不说了。
先从数据看获取数据,把出发地、目的地的数据放到hashmap中,(“出发地”,“总天数”)、(“目的地”,“总天数”),称为A和B吧。
再从数据库group by 出发地,目的地获取数据库,并将数据变成(“出发地-目的地”,“总天数”)的hashmap,称为C。
准备工作到此结束,开始往excel写数据。(还有一部分Total Days的处理,也不详细说了,比较简单)
(1)将出发地的数据写上去。就是A的key值。
(2)再写目的地的数据。就是B的key值。
(3)最重要的一步。(其实就是套俩for循环)。
for(Object key1 : A.keySet() ){
for(Object key2 : B.keySet() ){
String key = key1+"-"+kye2
1.判断C中是否包含key
2.若包含,输出值,若不包含,输出‘0’。
}
}
最后就变成这样了。
相关文章推荐
- 按键精灵如何调用Excel及按键精灵写入Excel数据的方法教程---入门自动操作表格
- 用HSSFWorkbook来对excel进行读操作
- c# 向Excel文件写入数据(Workbook 和Worksheet )
- C# 操作Excel之写入Excel操作浅析
- 用HSSFWorkbook来对excel进行读操作
- Java操作Excel之理解JXL--读取Excel模板动态写入数据并生成Excel
- js操作html页面写入excel
- C#中NPOI操作excel之读取和写入excel数
- 关于省市区excel表格通过mongodb转成json的操作
- HSSFWorkbook 导出表格到excel
- 使用模板的EXCEL操作(读取和写入,不定数量的行项目)
- BootStrap Fileinput插件和Bootstrap table表格插件相结合实现文件上传、预览、提交的导入Excel数据操作步骤
- excel 表格lookup 的操作
- C#操作Excel文件(读取Excel,写入Excel)
- 用HSSFWorkbook来对excel进行读操作
- Python Excel操作模块XlsxWriter之写入数组公式worksheet.write_array_formula()
- Python Excel操作模块XlsxWriter之写入行worksheet.write_row()
- 使用VSIUAL C#.NET操作Excel -把DataTable中的数据写入Excel
- 针对Excel表格文件操作的编程实现
- [例题]VB操作Excel (1)[用VB创建一个xls文件][并向里面写入一个数据]