Java代码实现excel导入
时间: 2024-02-23 07:08:10 浏览: 17
以下是Java代码实现excel导入的示例:
```java
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Iterator;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.ss.usermodel.WorkbookFactory;
public class ExcelImporter {
public static void main(String[] args) {
try {
// 读取Excel文件
FileInputStream inputStream = new FileInputStream(new File("data.xlsx"));
Workbook workbook = WorkbookFactory.create(inputStream);
// 获取Excel表格的第一个sheet
Sheet sheet = workbook.getSheetAt(0);
// 遍历sheet中的每一行
Iterator<Row> rowIterator = sheet.iterator();
ArrayList<ArrayList<String>> data = new ArrayList<ArrayList<String>>();
while (rowIterator.hasNext()) {
Row row = rowIterator.next();
Iterator<Cell> cellIterator = row.cellIterator();
ArrayList<String> rowData = new ArrayList<String>();
while (cellIterator.hasNext()) {
Cell cell = cellIterator.next();
switch (cell.getCellType()) {
case Cell.CELL_TYPE_STRING:
rowData.add(cell.getStringCellValue());
break;
case Cell.CELL_TYPE_NUMERIC:
rowData.add(String.valueOf(cell.getNumericCellValue()));
break;
case Cell.CELL_TYPE_BOOLEAN:
rowData.add(String.valueOf(cell.getBooleanCellValue()));
break;
default:
rowData.add("");
}
}
data.add(rowData);
}
// 输出读取的数据
for (int i = 0; i < data.size(); i++) {
for (int j = 0; j < data.get(i).size(); j++) {
System.out.print(data.get(i).get(j) + "\t");
}
System.out.println();
}
// 关闭输入流
inputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
这段代码使用了Apache POI库来读取Excel文件,同时使用了ArrayList来保存读取的数据。你可以根据自己的需求对代码进行修改。