java - 需要从 xlsx 文件中访问数据
问题描述
public class fileReader {
public static void main (String[] args) throws IOException {
String excelFilePath = "sample.xlsx";
InputStream inputStream = new FileInputStream(new File(excelFilePath));
XSSFWorkbook workbook = new XSSFWorkbook();
Sheet firstSheet = workbook.getSheetAt(0);
Iterator<Row> iterator = firstSheet.iterator();
while (iterator.hasNext()) {
Row nextRow = iterator.next();
Iterator<Cell> cellIterator = nextRow.cellIterator();
...
在 XSSFWorkbook 行中,错误已显示
Exception in thread "main" org.apache.poi.ooxml.POIXMLException: org.apache.xmlbeans.XmlOptions.setEntityExpansionLimit(I)Lorg/apache/xmlbeans/XmlOptions;
at org.apache.poi.ooxml.POIXMLFactory.createDocumentPart(POIXMLFactory.java:66)
at org.apache.poi.ooxml.POIXMLDocumentPart.read(POIXMLDocumentPart.java:657)
at org.apache.poi.ooxml.POIXMLDocument.load(POIXMLDocument.java:180)
at org.apache.poi.xssf.usermodel.XSSFWorkbook.<init>(XSSFWorkbook.java:282)
at org.apache.poi.xssf.usermodel.XSSFWorkbook.<init>(XSSFWorkbook.java:303)
at fileReader.main(fileReader.java:20)
解决方案
你没有读你的文件。您正在创建一个新工作簿。所以我怀疑你得到了一个例外,因为你要求一个Sheet
没有的地方。
使用将您的文件提供给实例XSSFWorkbook(File)
String excelFilePath = "sample.xlsx";
File f = new File(excelFilePath);
XSSFWorkbook workbook = new XSSFWorkbook(f);
String excelFilePath = "sample.xlsx";
File f = new File(excelFilePath);
InputStream inputStream = new FileInputStream(f);
XSSFWorkbook workbook = new XSSFWorkbook(inputStream);
如果将文件提供给工作簿实例,则会出现错误,显示文件无法解析为类型
只需要导入java.io.File
推荐阅读
- python-3.x - 我的 python 脚本将大尺寸 pdf 分成两部分或更多部分有什么问题?
- java - 合并 Group by 中的两个地图
- node.js - 如何从浏览器链接启动/聚焦电子应用程序?
- python - Opencv addWeighted 到同一个矩阵
- python - Py-Polars 日期时间转换
- java - Spring R2DBC DatabaseClient 丢失 TZ 信息
- python - 如何在 Python 中创建和使用文本文件?
- android - Android后台进程每分钟从网页加载数据
- python - 在 AWS 中,从 sagemaker 执行笔记本
- asynchronous - 为什么在等待点上持有非发送类型会导致非发送未来?