在java中读取excel时,变量为空

在java中读取excel时,变量为空,java,excel,netbeans,return,xlsx,Java,Excel,Netbeans,Return,Xlsx,我试图阅读这个excel文件:Test.xlsx,为此我使用了一个在互联网上找到的示例,但是 我使用此链接作为示例: 它不起作用。 我复制了文件的url,因此没有错误。 无论何时运行它,它都不会显示错误,只是:[] 当我调试它时,它向我显示listsize=0 我应该换什么 ArrayList<String> list = new ArrayList<String>(); @Override public List<String> ge

我试图阅读这个excel文件:Test.xlsx,为此我使用了一个在互联网上找到的示例,但是

我使用此链接作为示例:

它不起作用。 我复制了文件的url,因此没有错误。 无论何时运行它,它都不会显示错误,只是:[] 当我调试它时,它向我显示listsize=0

我应该换什么

   ArrayList<String> list = new ArrayList<String>();


   @Override

   public List<String> getExcel(){

    try {
        FileInputStream file = new FileInputStream(new File("C:\\Users\\user\\Documents\\Test.xlsx"));


        //Create Workbook instance holding reference to .xlsx file 
        HSSFWorkbook workbook = new HSSFWorkbook(file);

        //Get first/desired sheet from the workbook 
        HSSFSheet sheet = workbook.getSheet("Sheet1");

        //Iterate through each rows one by one 
        Iterator<Row> rowIterator = sheet.iterator();


        while (rowIterator.hasNext()) {
            Row row = rowIterator.next();
            //For each row, iterate through all the columns 

            if (row.getRowNum() <= 7) {
            continue;// skip to read the first 7 row of file
            }


            Iterator<Cell> cellIterator = row.cellIterator();

            while (cellIterator.hasNext()) {
                Cell cell = cellIterator.next();
                list.add(cell.getStringCellValue());
            }
            //System.out.println("");
        }
        file.close();
    } catch (Exception e) {
        e.printStackTrace();
    }

    return list;


}
ArrayList list=new ArrayList();
@凌驾
公共列表getExcel(){
试一试{
FileInputStream file=newfileinputstream(新文件(“C:\\Users\\user\\Documents\\Test.xlsx”);
//创建包含对.xlsx文件引用的工作簿实例
HSSF工作簿=新的HSSF工作簿(文件);
//从工作簿中获取第一张/所需的工作表
HSSFSheet sheet=workbook.getSheet(“Sheet1”);
//逐个遍历每一行
迭代器rowIterator=sheet.Iterator();
while(roweiterator.hasNext()){
行=行迭代器。下一步();
//对于每一行,遍历所有列

如果(row.getRowNum()您对试图打开的文件(Test.xlsx)使用了错误的类。根据扩展,我可以假设这是Excel 2007或更高版本的文档。对于Excel 2003使用
HSSFWorkbook
,对于Excel 2007或更高版本使用
xssf工作簿
。查看下载包附带的Apache POI文档。其中包含有关如何完成此操作的基本教程

您需要将所有“HSSF”类替换为“XSSF”等效类。请注意,创建文档部分(即工作簿、工作表等)所调用的方法并不总是相同的


试试这个。不久前,我为Apache POI的一个简单教程创建了一个小演示。有一个Excel示例,您可以学习。该位置包含源代码和一组幻灯片,您应该能够轻松阅读。

展示一些示例XML:)你需要哪一个?获得了web和project XML。@Mr.Mathy我刚刚更新了答案,添加了我几年前写的一个教程的链接。我在Google drive上放了一些幻灯片和一些源代码,任何人都可以通过链接访问。如果你无法访问,请告诉我。那里应该有Word教程和Excel教程。不是吗如果你需要,他会在那里。祝你好运!:)我将hssf更改为xssf,但现在我遇到另一个错误,我再次被卡住:p所以我发布了另一个错误: