Apache poi 解决缺少sharedStrings.xml问题 java代码
时间: 2023-11-28 21:49:37 浏览: 81
如果在使用Apache POI读取Excel文件时出现缺少sharedStrings.xml文件的问题,可以尝试以下代码:
```java
FileInputStream fis = new FileInputStream("sample.xlsx");
XSSFWorkbook workbook = new XSSFWorkbook(fis);
XSSFReader reader = new XSSFReader(workbook);
SharedStringsTable sst = reader.getSharedStringsTable();
XMLReader parser = XMLReaderFactory.createXMLReader();
parser.setContentHandler(new XSSFSheetXMLHandler(workbook.getStylesSource(), sst, new ExcelSheetContentsHandler(), false));
XSSFReader.SheetIterator sheets = (XSSFReader.SheetIterator) reader.getSheetsData();
while (sheets.hasNext()) {
InputStream sheet = sheets.next();
InputSource sheetSource = new InputSource(sheet);
parser.parse(sheetSource);
sheet.close();
}
```
这段代码会使用`XSSFReader`类来读取Excel文件,然后通过`XSSFReader.SheetIterator`来遍历所有的工作表,最后通过`XMLReader`来解析每个工作表中的数据。在解析过程中,会使用`SharedStringsTable`来处理共享字符串,这样可以避免缺少`sharedStrings.xml`文件的问题。
阅读全文