POI Excel
来源:互联网 发布:淘宝怎样追加二次评论 编辑:程序博客网 时间:2024/06/15 06:00
1. Excel
POI提供了对Excel文件的读写,HSSF和XSSF提供创建,修改,读取和写入电子表格的方式
HSSF - 读写Excel '97(-2007)(.xls)文件格式XSSF - 读写Excel 2007 OOXML(.xlsx)文件格式SXSSF - XSSF的API兼容流扩展,用于生成大型电子表格,堆空间有限,实现低内存占用
org.apache.poi.ss.SpreadsheetVersion
2. HSSF用户模式类图
以HSSF为例
3. 工作簿Workbook
Workbook是创建或维护Excel工作簿的所有类的超接口。它属于org.apache.poi.ss.usermodel包
- HSSFWorkbook - 读写.xls格式的Excel
- XSSFWorkbook - 读写.xlsx格式的Excel
4. 工作表Sheet
工作表Sheet是工作簿Workbook的中心结构,一个工作簿最少 有一个工作表Sheet
- HSSFSheet - Excel 2003及以下版本
- XSSFSheet - Excel 2007及以上版本
3. 工作簿类结构
以HSSFWorkbook为例:
4. 合法sheet名
工作表Sheet名是有限制条件的:
5. Sheet名不能超过31个字符 6. 不得包含任何以下任何字符: - 0x0000 - 0x0003 - 冒号(:) - 反斜杠(\) - 星号(*) - 问号(?) - 正斜杠(/) - 方括号([])
POI提供了创建合法Sheet名的方法:
org.apache.poi.ss.util.WorkbookUtil#createSafeSheetName(final String nameProposal)
5. 创建Sheet步骤
1. 创建输出流OutputStream 2. 创建工作簿Workbook 3. 创建工作表Sheet 4. 创建行Row 5. 创建单元格Cell 6. 设置单元格值 7. 工作簿写入输出流 8. 关闭输出流
6. 创建Sheet实例
package hssf.sheet.sheet;import java.io.BufferedOutputStream;import java.io.File;import java.io.FileOutputStream;import org.apache.poi.hssf.usermodel.HSSFRichTextString;import org.apache.poi.hssf.usermodel.HSSFWorkbook;import org.apache.poi.ss.usermodel.Cell;import org.apache.poi.ss.usermodel.RichTextString;import org.apache.poi.ss.usermodel.Row;import org.apache.poi.ss.usermodel.Sheet;import org.apache.poi.ss.usermodel.Workbook;import org.apache.poi.ss.util.WorkbookUtil;import util.ExcelUtil;public class ExportSheet { public static void main(String[] args) throws Exception { File file = new File("C:\\Users\\Administrator\\Desktop\\test.xls"); if (file.exists()) { file.delete(); } BufferedOutputStream out = null; try { out = new BufferedOutputStream(new FileOutputStream("C:\\Users\\Administrator\\Desktop\\test.xls")); exportExcel(out); } finally { out.close(); } } private static void exportExcel(BufferedOutputStream out) throws Exception { // Step 1 : 创建工作簿Workbook Workbook workbook = new HSSFWorkbook();// Workbook workbook = new XSSFWorkbook(); String safeSheetName = WorkbookUtil.createSafeSheetName("合法工作表"); // Step 2 : 创建工作表Sheet Sheet sheet = workbook.createSheet(safeSheetName); // 设置列宽 setColWidth (sheet); Row row = null; Cell cell = null; for (int rowIndex = 0; rowIndex < 10; rowIndex++) { // Step 3 : 创建行Row row = sheet.createRow(rowIndex); row.setHeightInPoints(30); for (short colIndex = 0; colIndex < 10; colIndex++) { // Step 4 : 创建单元格Cell cell = row.createCell(colIndex); RichTextString text = new HSSFRichTextString(ExcelUtil.convertNum2CellId(rowIndex, colIndex)); // Step 5 : 设置单元格内容 cell.setCellValue(text); } } workbook.write(out); } /** * 设置列宽 * */ private static void setColWidth(Sheet sheet) { // 默认行高列宽 sheet.setDefaultRowHeight((short)(20*20)); sheet.setDefaultColumnWidth(4); for (int colIndex = 0; colIndex < 10; colIndex++) { sheet.setColumnWidth(colIndex, 12*256); } }}
7. 其他实例
http://www.cnblogs.com/LiZhiW/p/4313789.html
阅读全文
0 0
- Poi excel
- poi excel
- Poi Excel
- poi excel
- POI EXCEL
- POI (excel)
- POI(excel)
- POI(excel)
- POI(excel)
- POI(excel)
- POI Excel
- Excel POI导出excel
- POI-----POI读取Excel实例
- POI-----POI导出Excel实例
- POI---Excel简介
- POI操作EXCEL
- POI读写Excel文件
- POI读写Excel文件
- 10.数据库中的内置函数
- TCP和UDP分别有什么优缺点
- 前缀、中缀、后缀表达式
- idea中文手册地址
- 编译器的工作过程
- POI Excel
- 1、数据结构进阶一动态存储管理概念
- effective java(3) 之用私有构造器或者枚举类型强化Singleton属性
- mysql学习总结(二)
- <C++>3.带有默认值的函数
- error at ::0 can't find referenced pointcut...解决方法
- Java 并发编程--ThreadLocal类
- js和php获取页面的url信息
- ARM汇编的一些常识