请使用Java写一个Excel导入功能
时间: 2023-09-11 11:11:34 浏览: 39
以下是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.xssf.usermodel.XSSFWorkbook;
public class ExcelImporter {
public static void main(String[] args) {
ArrayList<String[]> data = importExcel("path/to/excel/file.xlsx");
// do something with the imported data
}
public static ArrayList<String[]> importExcel(String filePath) {
ArrayList<String[]> data = new ArrayList<String[]>();
try {
FileInputStream inputStream = new FileInputStream(new File(filePath));
XSSFWorkbook workbook = new XSSFWorkbook(inputStream);
Sheet sheet = workbook.getSheetAt(0);
Iterator<Row> rowIterator = sheet.iterator();
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 STRING:
rowData.add(cell.getStringCellValue());
break;
case NUMERIC:
rowData.add(String.valueOf(cell.getNumericCellValue()));
break;
case BOOLEAN:
rowData.add(String.valueOf(cell.getBooleanCellValue()));
break;
default:
rowData.add("");
}
}
data.add(rowData.toArray(new String[rowData.size()]));
}
workbook.close();
inputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
return data;
}
}
```
这个示例代码使用了Apache POI库来解析Excel文件,然后将数据存储在一个二维的字符串数组中返回。你可以根据自己的需要修改代码来适应不同的数据格式和数据处理需求。