在java中读取excel时,变量为空
我试着阅读这个excel文件:Test。为了做到这一点,我使用了一个在互联网上找到的例子,但是
我用这个链接作为例子:http://howtodoinjava.com/2013/06/19/readingwriting-excel-files-in-java-poi-tutorial/
它不起作用。 我复制了文件的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;
}
# 1 楼答案
您试图打开的文件(Test.xlsx)使用了错误的类。扩展一下,我可以假设这是一个Excel 2007或更高版本的文档。Excel 2003使用
HSSFWorkbook
,Excel 2007或更高版本使用XSSFWorkbook
。查看下载包附带的Apache POI文档。它包含关于如何实现这一点的基本教程您需要将所有“HSSF”类替换为“XSSF”类。请注意,创建文档部分(即工作簿、工作表等)所调用的方法并不总是相同的
试试这个link。不久前,我为一个关于ApachePOI的简单教程创建了一个小演示。有一个Excel的例子,你可以效仿。该位置包含源代码和一组幻灯片,您应该能够轻松地阅读