gpt4 book ai didi

java - 未报告的异常。必须被捕获或宣布被抛出

转载 作者:行者123 更新时间:2023-12-02 02:56:23 25 4
gpt4 key购买 nike

所以我正在尝试学习 Apache 的 POI API,但我在理解某些东西时遇到了一些困难。我正在尝试使用 JFileChooser 类打开现有的 Excel 文件,以便用户选择该 Excel 文件,然后我将以某种方式对其进行修改。但我在打开文件时遇到问题。它一直给我这个错误:未报告的异常。必须在包含 XSSFWorkbook 代码的行捕获或声明抛出。我的逻辑是这样的:

1) 让用户使用 JFileChooser 类选择他们想要修改的 Excel 文件

2) 创建一个新的工作簿和工作表以传输所选 Excel 文件中的数据

3)修改数据

public class readInExcel {
static void readExcel() throws IOException
{

JFileChooser fileChooser = new JFileChooser();

fileChooser.setCurrentDirectory(new File(System.getProperty("user.home")));

int returnVal = fileChooser.showOpenDialog(new JPanel());

if(returnVal == JFileChooser.APPROVE_OPTION)
{
File OGFile = fileChooser.getSelectedFile();

String fileName = "user.home.Desktop";
XSSFWorkbook wb = new XSSFWorkbook(OGFile);


XSSFSheet sheet = wb.createSheet("FirstSheet");


}

}

最佳答案

未报告的异常错误意味着您正在调用一个可能引发异常并需要处理的方法。在这种情况下,您需要将该方法放在 try-catch block 周围以捕获异常或抛出异常,以便可以由其他方法处理。

抱歉,我刚刚注意到您处理了 IOException。您收到的另一个错误是 RuntimeException。当您创建 XSSFWorkbook 对象时会引发此异常。当构造函数需要类型 InputStreamOPCPackage 时,您放入构造函数中的参数为 File 类型。只需像这样创建一个 FileInputStream 即可:

InputStream is = new FileInputStream(OGFile);
XSSFWorkbook wb = new XSSFWorkbook(is);

那么你不应该再有未处理/抛出的错误。

关于java - 未报告的异常。必须被捕获或宣布被抛出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43017991/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com