0

アクションとして保存で fileChooser.getSeletedFile() を調査して参照しようとしましたが、ファイルが作成されたかどうかを確認する方法がわかりません。これまでに試みたコードは次のとおりです。

コードとして保存(うまく機能します):

public void Save_As() {

    fileChooserTest.setApproveButtonText("Save");
    int actionDialog = fileChooserTest.showOpenDialog(this);

    File fileName = new File(fileChooserTest.getSelectedFile() + ".txt");
    try {
        if (fileName == null) {
            return;
        }

        BufferedWriter outFile = new BufferedWriter(new FileWriter(fileName));
        outFile.write(this.jTextArea2.getText());//put in textfile
        outFile.flush(); // redundant, done by close()
        outFile.close();
    } catch (IOException ex) {
    }
}

「保存」コードが機能しない:

private void SaveActionPerformed(java.awt.event.ActionEvent evt) {

    File f = fileChooserTest.getSelectedFile();
    try {
        if (f.exists()) {
            BufferedWriter bw1 = new BufferedWriter(new FileWriter(fileChooserTest.getSelectedFile() + ".txt"));
            bw1 = new BufferedWriter(new FileWriter(fileChooserTest.getSelectedFile() + ".txt"));

            String text = ((JTextArea) jTabbedPane1.getSelectedComponent()).getText();
            bw1.write(text);
            bw1.close();
        } else {
            Save_As();
        }
    } catch (Exception ex) {
        ex.printStackTrace();
    }
}
4

1 に答える 1

0

インスタンスをに保存する代わりに、インスタンスをに保存しますJFileChooserFile保存nullが実行される前に保存されます)。SaveActionPerformedメソッドで、ファイルが。であるかどうかを確認しますnull。そうであれば、nullを実行しSave_As、選択したファイルをファイル変数に保存します。そうでないnull場合は、通常のファイルへの保存を実行します。

于 2012-03-15T07:12:20.750 に答える