代码只读.xlsx格式。
InputStream in = lob.getBinaryStream();
OPCPackage pkg = OPCPackage.open(in);
XSSFReader r = new XSSFReader(pkg);
SharedStringsTable sst = r.getSharedStringsTable();
如何在Java中读取50MB xls excel文件?
答案 0 :(得分:1)
首先要做的事情是:阅读Excel文件与Spring和Hibernate无关。您正在使用Apache POI库。 XSSFReader
是一个用于读取XLSX文件的类,这就是您无法使用它读取XLS文件的原因。有一个详细的注释示例,可以从{{3>}站点的 XLS和XLSX文件中读取数据。我将在这里复制一个简短的片段,以帮助您入门:
public class ExcelReader {
public static final String SAMPLE_XLSX_FILE_PATH = "./sample-xlsx-file.xlsx";
public static void main(String[] args) throws IOException, InvalidFormatException {
Workbook workbook = WorkbookFactory.create(new File(SAMPLE_XLSX_FILE_PATH));
System.out.println("Workbook has " + workbook.getNumberOfSheets() + " Sheets : ");
for(Sheet sheet: workbook) {
System.out.println("=> " + sheet.getSheetName());
}
}
}