码迷,mamicode.com
首页 > 其他好文 > 详细

对poi-excel导出的浅层理解

时间:2019-02-22 01:04:13      阅读:208      评论:0      收藏:0      [点我收藏+]

标签:为什么   puts   过程   str   create   导出   write   问题   row   

上一篇对excel导入做了浅层的解释,本文将对导出再做浅层解释.

仍然是相同的套路,只不过是反过来而已.

反过来方向理论上本来是这样的:cell-->row-->sheet-->workbook-->输出流--->硬盘文件file

但实际却不是这样的,为什么呢?因为单元格cell不会创建出一个row,更不会创建一个sheet,也不可能反向创建一个workbook,而workbook与输出流之间存在层级关系,但不存在包含被包含关系,所以导出的方向就变成这样了:

workbook-->sheet--->row--->cell--->写内容-->输出流--->硬盘文件file

是不是很合理,很符合人类思维?

所以现在开始:

1.首先从Workbook开始:Workbook wb = new HSSFWorkbook(); (//HSSF是用于xls的,如果想输出xlsx格式的,就用另一个实现类)

2.然后创建sheet:wb.createSheet("测试用工作簿")

3.然后创建row:sheet.createRow(0)//0表示第一行

4.然后创建cell:row.createCell(0)//0表示第一列

5.然后写内容:cell.setCellValue("测试用的内容")

6.然后获取输出流:FileOutputStream fos = new FileOutputStream(filepath)

7.然后流呀,流向输出流呀,流到硬盘文件呀:wb.write(fos)

8.然后,关闭资源:fos.close(),wb.close()

然后,就结束了,束了,了...

就这样简单!

但是还有一些细节需要注意:

9.上面的步骤只是说流程,没有区别对待只有一行的表头和有多行的表体,但过程都是一样的.此外,也没有考虑格式问题,不过这些都是小问题,百度很容易查到的

 

总结一下导出线索:

workbook-->sheet--->row--->cell--->写内容--->获取输出流--->流动--->关闭资源

记住了吗?

对poi-excel导出的浅层理解

标签:为什么   puts   过程   str   create   导出   write   问题   row   

原文地址:https://www.cnblogs.com/wangxuejian/p/10416022.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!