4

次のコードは、ファイルの名前にファイル拡張子が自動的に追加されるため、Macでファイルを返すときに正常に機能します。

ただし、Windowsでは、ファイル名の一部としてファイルの拡張子を入力して、その拡張子を返すようにする必要があります。[名前を付けて保存]プルダウンメニューで拡張子が選択されている場合でも。

Windowsのfilechooserからファイルを返すときに名前に拡張子を自動的に追加する方法はありますか?

FileChooser.ExtensionFilter extFilter = new   FileChooser.ExtensionFilter(fileExtension.toUpperCase()+" files(*."+fileExtension+")", "*."+fileExtension);
                fileChooser.getExtensionFilters().add(extFilter);

                //Show save file dialog 
                final File file = fileChooser.showSaveDialog(MyStage.this);
4

1 に答える 1

2

私は同じ問題に遭遇しました。私の解決策は、新しいファイルを作成し、ファイルコンストラクターでファイル拡張子を文字列として追加することでした。

ユーザーが既存のファイルを選択して上書きできるようにする場合は、追加する前に、最初の保存ファイルに特定の拡張子が含まれていないことを確認してチェックを追加してください。含まれていない場合は、「test.xls.xls」のようになります。 "。

FileChooser fc = new FileChooser();
    FileChooser.ExtensionFilter extFilter = new FileChooser.ExtensionFilter("XLS File (*.xls)", "*.xls");

    fc.getExtensionFilters().add(extFilter);

    File save  = fc.showSaveDialog(stage);

    save = new File(save.getAbsolutePath()+".xls");

    FileOutputStream fileOut = new FileOutputStream(save);
于 2012-10-09T11:55:59.837 に答える