介绍:

应用场景

maven 坐标
- <dependency>
- <groupId>org.apache.poi</groupId>
- <artifactId>poi</artifactId>
- <version>3.16</version>
- </dependency>
- <dependency>
- <groupId>org.apache.poi</groupId>
- <artifactId>poi-ooxml</artifactId>
- <version>3.16</version>
- </dependency>
方法及其作用
创建/写入
- //创建Excel文件 并且写入文件内容(在内存中创建)
- XSSFWorkbook excel = new XSSFWorkbook();
用XSSFWorkbook()创建的excel表默认没有sheet页 需要手动创建
XSSFSheet sheet = excel.createSheet();//创建一个sheet页
- XSSFWorkbook excel = new XSSFWorkbook();//新建excel表
- XSSFSheet sheet = excel.createSheet("info");//创建一个sheet页
- //输入sheet名字
- XSSFRow row = sheet.createRow(1);//创建第二行(从0开始)
- row.createCell(1).setCellValue("姓名");//创建单元格也是从0开始 这里表示创建第二个单元格
- //在单元格中写入内容
- row.createCell(2).setCellValue("年龄");
-
- XSSFRow row1 = sheet.createRow(2);
- row1.createCell(1).setCellValue("小李");
- row1.createCell(2).setCellValue("18");
通过excel在磁盘创建
- //通过输出流将excel写入磁盘
- FileOutputStream info = new FileOutputStream(new File("D://info.xlsx"));
- excel.write(info);
-
- info.close();
- excel.close();//关闭资源
执行之后
读取
- //通过输入流获取表格
- FileInputStream in = new FileInputStream(new File("D://info.xlsx"));
- XSSFWorkbook excel = new XSSFWorkbook(in);//接收表格
- XSSFSheet sheet = excel.getSheetAt(0);//通过索引获取sheet页
- //XSSFSheet sheet1 = excel.getSheet("sheet");//通过名字获取sheet页
- int lastRowNum = sheet.getLastRowNum();//获取表中有内容的 最后一行的行号
- for (int i = 1; i <= lastRowNum; i++) {
- //已知有内容的最后一行 循环读取sheet页中内容
- XSSFRow row = sheet.getRow(i);
- XSSFCell cell = row.getCell(1);
- XSSFCell cell1 = row.getCell(2);
- System.out.println(cell + " " + cell1);
- }
- in.close();
- excel.close();
执行结果 记得关流
