要在Java中进行导入和导出Excel文件,可以使用一些第三方库来简化操作。以下是一种常见的方法,使用Apache POI库来实现:
- 导入Excel文件:
import org.apache.poi.ss.usermodel.*; import org.apache.poi.xssf.usermodel.XSSFWorkbook; try (InputStream inputStream = new FileInputStream("path/to/excel.xlsx"); Workbook workbook = new XSSFWorkbook(inputStream)) { Sheet sheet = workbook.getSheetAt(0); // 获取第一个工作表 for (Row row : sheet) { for (Cell cell : row) { // 读取单元格的值 CellType cellType = cell.getCellType(); if (cellType == CellType.STRING) { String value = cell.getStringCellValue(); // 处理字符串类型的数据 } else if (cellType == CellType.NUMERIC) { double value = cell.getNumericCellValue(); // 处理数值类型的数据 } // 处理其他类型的数据 } } } catch (IOException e) { e.printStackTrace(); }
在上述示例中,我们使用
FileInputStream
打开Excel文件,然后使用XSSFWorkbook
创建Workbook对象。通过Workbook对象,我们可以获取工作表(Sheet),并使用嵌套的循环遍历每个单元格,读取单元格的值。 - 导出Excel文件:
import org.apache.poi.ss.usermodel.*; import org.apache.poi.xssf.usermodel.XSSFWorkbook; Workbook workbook = new XSSFWorkbook(); Sheet sheet = workbook.createSheet("Sheet1"); // 创建一行 Row row = sheet.createRow(0); // 创建单元格并设置值 Cell cell1 = row.createCell(0); cell1.setCellValue("Value 1"); Cell cell2 = row.createCell(1); cell2.setCellValue(2.0); // 输出到文件 try (OutputStream outputStream = new FileOutputStream("path/to/excel.xlsx")) { workbook.write(outputStream); } catch (IOException e) { e.printStackTrace(); }
在上述示例中,我们创建了一个新的
XSSFWorkbook
,并创建一个名为"Sheet1"的工作表。然后,我们创建一行和两个单元格,设置它们的值。最后,将Workbook对象写入输出流并输出到Excel文件中。注意:在使用这些代码之前,请确保你已经引入了相应的Apache POI库,具体版本可以根据需要选择。并且,代码中的文件路径需要根据你的实际情况进行修改。