当前位置: 首页 > 知识库问答 >
问题:

如何解决Apache POI“工作簿”可能未初始化

解晟
2023-03-14

我需要阅读文件excel,我正在使用java spring boot,Apache POI。他们告诉我们


    Workbook workbook;
            if (FileExtension == "xlsx"){
                workbook = new XSSFWorkbook(excelFile);
            }
            else if (FileExtension == "xls"){
                workbook = new HSSFWorkbook(excelFile);
            }
Sheet datatypeSheet = workbook.getSheetAt(0);

共有1个答案

甄志
2023-03-14

当前的Apache POI版本提供WorkbookFactory。使用该类的create方法,不需要根据文件扩展名确定文件格式(XSSFHSSF)。WorkbookFactory.Create方法正在根据找到的文件内容创建XSSFWorkbookHSSFWorkbook

使用:

...
Workbook workbook = WorkbookFactory.create(excelFile);
Sheet datatypeSheet = workbook.getSheetAt(0);
...
 类似资料:
  • 我需要阅读文件excel,我正在使用java spring boot,Apache POI。他们告诉我们

  • 我试图读取xlsx格式的excel文件。但是我得到的结果太大,无效的句柄异常。我把文件实例在一个FileInputStream对象,并试图在XSSFWorkbook中设置该对象。但是我得到了这个例外。 我工作的环境中没有安装Microsoft office,并且有开放式office。我没有在open office中编辑我的xlsx文件。但我在open office中打开了文件,然后尝试运行poi代

  • 我的 centos7 虚拟机中安装的 wiki.js + postgresql 运行初始化页面时出现下面提示,要如何解决

  • 问题内容: 我有一个方法创建一个,另一个方法更改字符串 我的编译器说它“可能尚未初始化”。 有人可以解释吗? 问题答案: 变量可能尚未初始化 在内部定义方法时,必须在其中初始化程序的每个变量中必须先使用一个值的地方。 同样重要的是,您的代码将永远无法正常运行,因为Java中的字符串是不可变的,因此您无法编辑字符串,因此应更改方法。 我将您的代码更改为类似的内容,但是我认为您的编辑方法应该做另一件事

  • 所以我已经在结果中声明了相关字符串的值,但是它仍然说我的变量“result”可能还没有初始化。 我正在尝试实现与此类似的输出。任何人都可以帮我吗?谢谢!

  • 我正在研究Euler Problem 9项目,其中说明: 毕达哥拉斯三元组是由三个自然数组成的集合 例如,3^2 4^2=9 16=25=52。 确实存在一个毕达哥拉斯三重态,其bc=1000。查找产品abc。 以下是我到目前为止所做的: 当我运行代码时,会出现以下错误: 注意:我的每个变量(a、b和c)都有不同的行号。 我想当我声明a、b和c为整数时,如果不赋值,默认值是0。 即使不是这样,在我