我是java的新手,我试图在按下按钮的时候,它会更新放在表格中的新信息。我收到了这个错误:
unreported exception java.io.IOException; must be caught or declared to be thrown
这里的代码我遇到了麻烦:
public static void updateAction(){
update.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
BufferedWriter bfw = new BufferedWriter(new FileWriter(tmp));
for(int i = 0 ; i < table.getColumnCount() ; i++)
{
bfw.write(table.getColumnName(i));
bfw.write("\t");
}
for (int i = 0 ; i < table.getRowCount(); i++)
{
bfw.newLine();
for(int j = 0 ; j < table.getColumnCount();j++)
{
bfw.write((String)(table.getValueAt(i,j)));
bfw.write("\t");;
}
}
bfw.close();
}});
}
感谢您提供任何帮助。
答案 0 :(得分:3)
BufferedWriter
的方法抛出IOException
。您必须在方法体中捕获它或声明方法以抛出它。
由于您使用的是ActionListener
的匿名实施,因此无法更改actionPerformed
的签名。因此,您必须抓住IOException
内的actionPerformed
。
答案 1 :(得分:0)
你应该像这样抓住
try {
....
} catch(IOException e) {
}
或在
处抛出IOExceptionpublic void actionPerformed(ActionEvent e) throws IOException