我在从 .xlsx 文件读取数据时遇到问题,因为异常的 catch (InvalidFormatException e) 返回错误为“InvalidFormatException 无法访问的 catch block 。此异常永远不会从 try 语句主体中抛出”
我使用了 openxml4j import ,我认为这是必要的
public static Object[][] getTestData(String sheetname) {
FileInputStream file = null;
try {
file = new FileInputStream(TEST_DATA_SHEET_PATH);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
try {
book = WorkbookFactory.create(file);
} catch (InvalidFormatException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
预计 InvalidFormatException 不应出现错误,并且 .xlsx 文件中的数据应为红色
最佳答案
try {
book = WorkbookFactory.create(file);
} catch (InvalidFormatException e) {
e.printStackTrace();
}
此 try block 内的代码不会引发 InvalidFormatException
。这就是您收到错误消息的原因。
也许您的意图是在其他地方使用该 catch block 。
来自文档:
这是方法签名:
public static Workbook create(java.io.File file)
throws java.io.IOException,
EncryptedDocumentException
正如您在上面所看到的,此方法不会抛出 InvalidFormatException
。
关于java - 无法访问的 catch block : Unreachable catch block for InvalidFormatException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54627460/