Apache POI 3.5 HSSF & XSSF Excel操作指南
需积分: 31 33 浏览量
更新于2024-07-28
收藏 1.36MB PDF 举报
"这篇文档是关于Apache POI 3.5版中HSSF和XSSF库的Excel操作快速入门指南,由岑坚(高凯)翻译。内容涵盖如何添加POI支持、创建新工作簿和sheet页、创建及格式化单元格、遍历单元格、处理边框和填充色、合并单元格、处理字体、自定义颜色、读取和重写工作簿、设置换行、创建数据格式、适应页面大小、设定打印区域、设置脚注页码、使用便捷函数、移动行、设置默认选中的sheet页、调整放大倍率、拆分和冻结窗格、重复列和行、添加页眉和页脚以及绘制图形等。"
Apache POI是Java库,用于读写Microsoft Office格式的文件,包括Excel。HSSF是处理老版本Excel文件(.xls,BIFF8格式)的API,而XSSF则用于处理Excel 2007及以上版本的XML格式(.xlsx)文件。
1. 添加POI支持:在项目中引入Apache POI的库文件,配置Maven或Gradle依赖,确保能够使用HSSF和XSSF相关类。
2. 创建新工作簿:使用Workbook接口的静态工厂方法创建HSSFWorkbook或XSSFWorkbook对象,这将代表一个新的Excel文件。
3. 创建新sheet页:调用Workbook对象的createSheet()方法,可以创建新的Sheet对象,代表Excel的一页。
4. 创建单元格:在Sheet对象上使用createRow()创建新行,然后在行对象上使用createCell()创建单元格。
5. 新建时间格式的单元格:设置单元格类型为DataType.NUMERIC,并使用CellStyle设置相应的日期格式。
6. 处理不同内容格式的单元格:单元格可以是数值、字符串、日期、布尔值等多种类型,需要根据需要设置相应的数据类型和样式。
7. 遍历列和单元格:通过迭代Sheet对象的行集合,再遍历每行的细胞集合,可以访问到所有的单元格。
8. 获取单元格内容:使用Cell对象的getCellValue()方法获取内容,可能需要根据单元格类型转换。
9. 文本提取:对于字符串单元格,可以直接获取;对于其他类型,可能需要转换。
10. 单元格边框处理:使用CellStyle设置边框样式,如粗细、颜色和样式。
11. 填充色和颜色操作:通过CellStyle设置单元格的背景颜色。
12. 合并单元格:使用Sheet对象的mergeCells()方法合并多个单元格。
13. 字体处理:通过Font对象设置字体的大小、颜色、样式(如加粗、斜体)。
14. 自定义颜色:可以创建新的颜色索引,并应用到CellStyle。
15. 读取和重写工作簿:使用FileInputStream读取现有文件,用Workbook的write()方法将修改后的工作簿写入OutputStream。
16. 在单元格中使用换行:设置单元格样式中的wrapText属性为true。
17. 创建用户自定义数据格式:创建自定义的数字格式字符串,然后使用CellStyle设置。
18. Sheet页自适应页面大小:使用Sheet对象的autoSizeColumn()方法自动调整列宽。
19. 设定打印区域:设置PrintSetup对象的printArea属性。
20. 设置脚注页码:通过Sheet对象的setFooter()方法设置页脚内容,包括页码。
21. 使用便捷函数:POI提供了一些简化操作的方法,如getFirstRowNum(), getLastRowNum()等。
22. 上下移动一行:通过Row对象的moveToInsertionPoint()方法实现。
23. 将sheet页设定为默认选中:使用Sheet对象的setSelected(true)方法。
24. 设置sheet页放大倍率:通过Sheet对象的setZoom()方法。
25. 拆分和冻结窗格:使用Sheet对象的createFreezePane()或createSplitPane()方法。
26. 重复列和行:设置Sheet对象的repeatColumns()和repeatRows()方法。
27. 页眉和页脚:使用Header和Footer对象设置内容。
28. 绘制图形:使用DrawingPatriarch创建形状对象,设置其位置和样式。
29. 设置图形样式:调整形状的颜色、线条样式、填充色等。
综上,该文档为开发者提供了全面的指导,帮助他们快速上手使用Apache POI进行Excel文件的读写和操作。
2013-05-31 上传
2020-11-23 上传
2011-01-17 上传
2010-08-13 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
yang123junjie
- 粉丝: 0
- 资源: 3
最新资源
- IETI-LAB7-2021
- emd.rar_matlab例程_matlab_
- Xbee-boss:使用Paul Malmstem的python xbee库
- ETL_Project:GWU Bootcamp ETL项目
- OpenCV-MinGW-Build::eyes:MinGW在Windows上编译的OpenCV32位和64位版本。 包括OpenCV 3.3.1、3.4.1、3.4.1-x64、3.4.5、3.4.6、3.4.7、3.4.8-x64、3.4.9、4.0.0-alpha-x64、4.0.0- rc-x64、4.0.1-x64、4.1.0、4.1.0-x64、4.1.1-x64、4.5.0-with-contrib
- data-structures-and-algorithms
- contentful.swift:与Contentful的内容交付API的令人愉快的Swift接口
- StackStockRouter
- speaker_recognition.rar_语音合成_matlab_
- Allow CORS: Access-Control-Allow-Origin-crx插件
- pairgame-heroku
- 参考资料-WI-NK0103公司会议制度管理规定(09.04.30改).zip
- Golang_Homework
- TopAnimes是一个示例动漫Android应用程序-Android开发
- Landing-Page:我的编程产品组合的目标页面
- 快车时间