Java 读/写 Excel - 错误:构造函数 XSSFWorkbook(FileInputStream) 未定义

问题描述 投票:0回答:4

我正在尝试从Excel文件中读取数据,我使用以下代码:

File src = new File("T:\\SeleniuminputFiles\\input.xlsx");
FileInputStream fis = new FileInputStream(src);
XSSFWorkbook wb = new XSSFWorkbook(fis);
XSSFSheet sheet1 = wb.getSheetAt(0);

但我收到编译错误,因为构造函数 XSSFWorkbook(FileInputStream) 未定义。

我已经从最新的稳定版本 Apache POI 3.16 下载了外部 Jar 文件 http://poi.apache.org/download.html#POI-3.16

我们将非常感谢您的帮助。

java excel apache jar
4个回答
0
投票

尝试使用 FileInputStream :

public void ReadExcel()
    {
       String excelFilePath = "D://Selenium Training//ExcelSearch//Configurations.xlsx";

       FileInputStream inputStream = new FileInputStream(new File(excelFilePath));

       Workbook workbook = new XSSFWorkbook(inputStream);

       Sheet firstSheet = workbook.getSheetAt(0);
    }

0
投票

也许您使用的不是当前版本。我也有同样的问题。

poi-3.8-20120326 poi-ooxml-3.9 poi-ooxml-schemas-3.7 poi-ooxml-schemas-3.9

尝试安装此版本或最新版本。


0
投票

我也遇到了同样的问题。我在构建路径中添加了最新的 poi jar。问题已解决。它有多个 jar 文件。添加项目中的所有jar文件。 文件名:poi-bin-4.0.0-20180907

下载这里


-1
投票

首先,如果您有 File 对象,那么为什么需要传递 FileInputStream

其次,您不能将 FileInputStream 传递给 XSSFWorkbook,因为构造函数可以接受 FileStringInputStreamOPCPackage 和空白构造函数请参见 this

由于你已经有了一个文件对象,所以你可以尝试下面的代码:

File file = new File("T:\\SeleniuminputFiles\\input.xlsx");
XSSFWorkbook wb = new XSSFWorkbook(file);
© www.soinside.com 2019 - 2024. All rights reserved.