如何更正 netbeans 中 'save to file' 按钮上的错误?

How do I correct errors on my 'save to file' button in netbeans?

import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.io.BufferedReader;
import java.io.FileReader;


private void btnFileSaveActionPerformed(java.awt.event.ActionEvent evt) {                                            
    // TODO add your handling code here:

    BufferedWriter bfw = new BufferedWriter(new FileWriter("D:\CedulaList.txt"));

                  for (int i = 0 ; i < tableCedula.getRowCount(); i++)
                  {

                    for(int j = 0 ; j < tableCedula.getColumnCount();j++)
                    {
                        bfw.newLine();
                        bfw.write((String)(tableCedula.getValueAt(i,j)));
                        bfw.write("\t");;
                    }
                  }
                  bfw.close();



}   

我似乎不明白如何解决这个问题。错误说,“未报告的异常 IOException;必须被捕获或声明为抛出。

转换为 try-with-resources。

在方法签名中添加 throws子句

private void btnFileSaveActionPerformed(java.awt.event.ActionEvent evt) throws IOException {    

或使用try catch

private void btnFileSaveActionPerformed(java.awt.event.ActionEvent evt) {                                            
    // TODO add your handling code here:
   try {
    BufferedWriter bfw = new BufferedWriter(new FileWriter("D:\CedulaList.txt"));

                  for (int i = 0 ; i < tableCedula.getRowCount(); i++)
                  {

                    for(int j = 0 ; j < tableCedula.getColumnCount();j++)
                    {
                        bfw.newLine();
                        bfw.write((String)(tableCedula.getValueAt(i,j)));
                        bfw.write("\t");;
                    }
                  }
                  bfw.close();
    } catch(IOException e){
         //Handle the exception
    }


}   

您需要 throws/try-catch 作为:

private void btnFileSaveActionPerformed(java.awt.event.ActionEvent evt) 
{                                            
   try{
      BufferedWriter bfw = new BufferedWriter(new FileWriter("D:\CedulaList.txt"));

              for (int i = 0 ; i < tableCedula.getRowCount(); i++)
              {

                for(int j = 0 ; j < tableCedula.getColumnCount();j++)
                {
                    bfw.newLine();
                    bfw.write((String)(tableCedula.getValueAt(i,j)));
                    bfw.write("\t");;
                }
              }
   }catch(Exception ex){

   }finally{
      if(bfw != null){
         bfw.close();
      }
   }    
}