【发布时间】:2017-09-19 19:25:48
【问题描述】:
我正在尝试将此基本布局用于可以读取 Excel 文件的程序。我想扩展此代码之外的内容,但由于某种原因,每次构建代码时,都会出现错误“注意:C:\Users\Ryan Kabir\Documents\NetBeansProjects\ExcelReader\src\excelreader\ExcelReader.java uses or overrides已弃用的 API。 注意:使用 -Xlint:deprecation 重新编译以获取详细信息。”我尝试使用 javac -Xlint:deprecation ExcelReader.java 进行编译,但我找不到不推荐使用的方法。 不是我的测试 excel 文件只是一个 3x6 表。
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.Iterator;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
/**
* A dirty simple program that reads an Excel file.
* @author www.codejava.net
*
*/
public class ExcelReader {
public static void main(String[] args) throws IOException {
String excelFilePath = "Books.xlsx";
FileInputStream inputStream = new FileInputStream(new File(excelFilePath));
Workbook workbook = new XSSFWorkbook(inputStream);
Sheet firstSheet = workbook.getSheetAt(0);
Iterator<Row> iterator = firstSheet.iterator();
while (iterator.hasNext()) {
Row nextRow = iterator.next();
Iterator<Cell> cellIterator = nextRow.cellIterator();
while (cellIterator.hasNext()) {
Cell cell = cellIterator.next();
switch (cell.getCellType()) {
case Cell.CELL_TYPE_STRING:
System.out.print(cell.getStringCellValue());
break;
case Cell.CELL_TYPE_BOOLEAN:
System.out.print(cell.getBooleanCellValue());
break;
case Cell.CELL_TYPE_NUMERIC:
System.out.print(cell.getNumericCellValue());
break;
}
System.out.print(" - ");
}
System.out.println();
}
workbook.close();
inputStream.close();
}
}
【问题讨论】:
-
您使用的是哪个版本的
apache-poi?发布您的依赖项 -
这不是错误,而是警告。这不是您未指定的不起作用的原因。
标签: java excel apache-poi deprecation-warning