JAVA读写Excel文件
时间: 2024-12-06 08:21:56 浏览: 39
在Java中,我们可以使用Apache POI库来读取和写入Excel文件。Apache POI是HSSF(用于创建新的Excel文件)和XSSF(用于打开和修改现有的xlsx文件)两个项目的集合。以下是简单的读写操作步骤:
**读取Excel文件(使用HSSFWorkbook或XSSFWorkbook)**:
```java
import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
public class ReadExcel {
public static void main(String[] args) {
try {
FileInputStream file = new FileInputStream(new File("path_to_your_file.xlsx")); // 替换为你的文件路径
Workbook workbook = new XSSFWorkbook(file); // 使用XSSFWorkbook打开xlsx文件
Sheet sheet = workbook.getSheetAt(0); // 获取第一个工作表
Iterator<Row> rowIterator = sheet.iterator();
while (rowIterator.hasNext()) {
Row row = rowIterator.next();
Iterator<Cell> cellIterator = row.cellIterator();
while (cellIterator.hasNext()) {
Cell cell = cellIterator.next();
switch (cell.getCellType()) {
case STRING:
System.out.print(cell.getStringCellValue() + "\t");
break;
// 添加对其他数据类型的处理...
}
}
System.out.println(); // 换行
}
file.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
**写入Excel文件(使用XSSFWorkbook)**:
```java
import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
public class WriteExcel {
public static void main(String[] args) {
try {
Workbook workbook = new XSSFWorkbook(); // 创建一个新的工作簿
Sheet sheet = workbook.createSheet("Sheet1"); // 创建新的工作表
Row headerRow = sheet.createRow(0);
headerRow.createCell(0).setCellValue("Name");
headerRow.createCell(1).setCellValue("Age");
// 添加一些数据行
Row dataRow1 = sheet.createRow(1);
dataRow1.createCell(0).setCellValue("Alice");
dataRow1.createCell(1).setCellValue(30);
Row dataRow2 = sheet.createRow(2);
dataRow2.createCell(0).setCellValue("Bob");
dataRow2.createCell(1).setCellValue(25);
FileOutputStream outputStream = new FileOutputStream("output_file.xlsx"); // 输出流
workbook.write(outputStream);
workbook.close();
outputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
阅读全文