写入ActionListener中的文件

时间:2012-11-20 01:14:27

标签: java swing file actionlistener event-dispatch-thread

所以,当我按下某个按钮时,我的文件应该“安全”更新。我的代码是:

  public void writeBallot() throws IOException{
    //need to make a new file
    File realfile = new File("Ballots.txt");
    File tempfile = new File("ballottemp.txt");
    tempfile.createNewFile();
    PrintWriter p = new PrintWriter(tempfile);

    for ( int i = 0 ; i<theButtons.length; i ++)
        p.println(indivelection.get(i) + ":" + intcounts[i]);

    realfile.delete();

    tempfile.renameTo(realfile);

当我按下某个按钮时,除此之外,该方法应该执行。我为该按钮编写的代码是:

if(e.getSource()==castVoteButton){

            int reply = JOptionPane.showConfirmDialog(null,"Are you sure you are done voting?", "Are You Sure?", JOptionPane.YES_NO_OPTION);

            if (reply == JOptionPane.YES_OPTION){
                for (int j = 0; j<thePanels.length; j++){
                ((Ballot) thePanels[j]).buttonStatus(false);
                ((Ballot)thePanels[j]).checkyocolors();
                }
                castVoteButton.setEnabled(false);
                loginButton.setEnabled(true);

                for (int p = 0; p<thePanels.length; p++)
                    try {
                        ((Ballot)thePanels[p]).writeBallot();
                    } catch (IOException e1) {
                        e1.printStackTrace();}

现在,我已经测试了我的方法来在另一个类中编写更新文件,它似乎可以工作,但是一旦我将它包装在try,catch中,这显然是ActionListener所必需的,它似乎没有做任何东西。

有没有人有任何建议或提示,以便我可以在按下JButton时实现我的方法?

0 个答案:

没有答案