POI是Apache的一个开源项目,其全称为Poor Obfuscation Implementation,主要用于对Microsoft Office格式文档进行读写。在Java中,我们可以使用POI库处理Excel文档,实现对Excel文件的读写操作。
一、引入POI库
首先,我们需要在项目中引入POI的依赖。在Maven项目中,我们可以在pom.xml添加以下依赖:
<dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>4.1.2</version> </dependency>
二、创建Excel表格
有了POI,我们可以很方便地在Java中创建Excel表格。下面是创建一个新的Excel文件并在其中添加内容的示例:
import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.ss.usermodel.*; import java.io.FileOutputStream; import java.io.IOException; public class ExcelExample { public static void main(String[] args) throws IOException { Workbook workbook = new HSSFWorkbook(); // 新建工作簿 Sheet sheet = workbook.createSheet("sheet1"); // 创建新的工作表 Row row = sheet.createRow(0); // 创建行 // 在行中添加单元格,并设置值 Cell cell = row.createCell(0); cell.setCellValue("Hello"); cell = row.createCell(1); cell.setCellValue("World"); FileOutputStream out = new FileOutputStream("workbook.xls"); workbook.write(out); // 把工作簿写入文件 out.close(); // 关闭文件输出流 } }
三、读取Excel表格
同样,我们也可以使用POI读取已经存在的Excel文件。以下示例展示了如何读取Excel文件中的内容:
import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.ss.usermodel.*; import java.io.FileInputStream; import java.io.IOException; public class ExcelExample { public static void main(String[] args) throws IOException { FileInputStream in = new FileInputStream("workbook.xls"); // 打开文件输入流 Workbook workbook = new HSSFWorkbook(in); // 从输入流创建工作簿 // 获取第一个工作表并遍历行 Sheet sheet = workbook.getSheetAt(0); for (Row row : sheet) { // 在行中遍历单元格 for (Cell cell : row) { System.out.println(cell.getStringCellValue()); // 打印单元格的值 } } in.close(); // 关闭文件输入流 } }