使用Apache POI创建及操作Excel工作簿与样式

需积分: 40 4 下载量 71 浏览量 更新于2024-08-18 收藏 7.09MB PPT 举报
Apache POI是Java开发者用于处理Microsoft Office格式文件(如Excel、Word、PowerPoint等)的强大工具,它是一个开源且跨平台的库。本篇指南将详细介绍如何使用Apache POI创建工作簿、表和样式,以及如何导入和导出Excel文件。 首先,让我们了解如何创建一个新的工作簿。在Apache POI中,HSSFWorkbook类用于处理Excel的XLS格式,而XSSFWorkbook则是处理XLSX格式。创建一个工作簿的步骤如下: ```java HSSFWorkbook workbook = new HSSFWorkbook(); ``` 如果你需要处理XLSX文件,可以使用XSSFWorkbook替代。工作簿是包含多个工作表的容器,你可以创建多张工作表,例如: ```java HSSFSheet sheet1 = workbook.createSheet("FCC航班计划列表"); HSSFSheet sheet2 = workbook.createSheet("订单列表"); ``` 这里,`HSSFSheet`代表Excel工作表,你可以通过指定名称来创建新的工作表。 接下来,单元格样式是Excel中一个重要的概念,用于设置单元格的外观,如字体、颜色、边框等。创建单元格样式如下: ```java HSSFCellStyle titleStyle = workbook.createCellStyle(); titleStyle.setFillForegroundColor(IndexedColors.YELLOW.getIndex()); titleStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND); titleStyle.setFontColor(IndexedColors.BLUE.getIndex()); ``` 这里设置了单元格填充颜色为黄色,填充模式为实心,并将字体颜色设为蓝色。这些样式可以在后续的数据填充时应用到特定的单元格。 对于数据导入和导出,以下是一个基本的流程: 1. 准备阶段:确保添加了Apache POI的HSSF或XSSF相关的依赖库,可以从官方下载地址(http://poi.apache.org/download.html)获取 poi-3.9.jar 或更高版本。 2. 打开Excel文件:使用`FileInputStream`读取Excel文件并创建`Workbook`对象: ```java InputStream input = new FileInputStream(new File(filepath)); Workbook workbook = new HSSFWorkbook(input); // 或者 XSSFWorkbook ``` 3. 操作工作表:获取工作表并遍历数据: - 获取指定索引的工作表:`Sheet sheet = workbook.getSheetAt(0);` - 获取所有工作表:`Sheet[] sheets = workbook.getSheets();` - 遍历行和列读取数据: ```java for (Row row : sheet) { for (Cell cell : row) { // 读取和处理数据 } } ``` 4. 获取单元格数据类型:使用`getCellType()`方法确定数据类型,如`CELL_TYPE_BOOLEAN`表示布尔值。 5. 写入数据:当你收集了所需的数据后,可以将其写回Excel文件,先创建一个新的`Row`,然后添加单元格和数据,最后保存`Workbook`: ```java Row newRow = sheet.createRow(index); Cell cell = newRow.createCell(columnIndex); cell.setCellValue(value); workbook.write(new FileOutputStream("output.xlsx")); // 或者其他输出路径 workbook.close(); ``` Apache POI提供了丰富的API,使得Java程序能够灵活地操作各种Microsoft Office格式的文件,无论是创建、修改还是读取,都能够在不依赖于微软办公软件的前提下完成。掌握这些基础知识后,你就可以进一步探索更高级的功能,如公式、图表、合并单元格等,以满足实际项目中的需求。