3

少しグーグルした後、私はこれがあまり見られません。ユーザーに「既に存在する」ファイルを選択させる「一般的な」方法はありますか

http://coding.derkeiler.com/Archive/Java/comp.lang.java.help/2004-01/0302.htmlJFileChooser のような確認ダイアログを追加でき ますが、標準的な方法はありますか?

ありがとう。

4

3 に答える 3

3

まず、より適切なオプションがchooser.showOpenDialogまたはshowSaveDialogのどちらであるかを確認する必要があります

[保存]ダイアログでは、指定されたパス内の任意の名前を選択できます。これは存在しないファイルである可能性がありますが、openは常に選択されたファイルを受け入れます。file.exists()を安全に追加して、ファイルが存在することを確認できます。ボタンのテキストを変更することもできます。ダイアログなど。

JFileChooser chooser = new JFileChooser();
    chooser.setApproveButtonText("Save");
    int result = chooser.showOpenDialog(null);
    if(result == JFileChooser.APPROVE_OPTION){
        File selection = chooser.getSelectedFile();
        //verify if file exists
        if(selection.exists()){
            //you can continue the code here or call the next method or just use !exists and behavior for wrong file
        }else{
            //System.exit(0), show alert.. etc
        }
    }
于 2012-05-16T19:40:33.033 に答える
2

これと同じくらい簡単です:

JFileChooser fc = new JFileChooser();
while(true)
{
    if(fc.showSaveDialog(null) == JFileChooser.APPROVE_OPTION &&
      !fc.getSelectedFile().exists())
        JOptionPane.showMessageDialog(null, "You must select an existing file!");
    else break;
}
于 2012-05-16T19:46:03.400 に答える
2

「開く」動作が必要なようですが、「開く」ではなく「保存」という確認ボタンが必要です。

この方法でこれを行うことができます: http://docs.oracle.com/javase/6/docs/api/javax/swing/JFileChooser.html#showDialog%28java.awt.Component,%20java.lang.String%29

approvalButtonText 引数に「Save」を渡します。

于 2012-05-16T19:36:07.890 に答える