我的程序有一个名为data的文件夹 - 它存储文本文件 - 当我点击保存在我的JAR应用程序中时,没有任何反应。我该如何制作,以便我可以访问和保存新文件?这是一些代码
public void saveAs() {
FileChooser fileChooser = new FileChooser();
fileChooser.setTitle("Save Routine"); fileChooser.setInitialDirectory(new File("data/routines"));
fileChooser.getExtensionFilters().add(new FileChooser.ExtensionFilter("txt", "*.txt"));
if (fileName != null) {
fileChooser.setInitialFileName(fileName);
}
save(fileChooser.showSaveDialog(stage));
}
我也是用绝对路径做的,但也没有用
答案 0 :(得分:0)
没有看到你的save(java.io.File)方法,我不能说。 FileChooser.showSaveDialog只显示对话框并告诉您他们选择了哪个文件(如果有的话)。然后你必须写它是JAR还是txt。
试试这个:
private void save(File where){
if(where==null){ //they canceled.
return;
}
try(OutputStream out = Files.newOutputStream(where.toPath())){
//Write to out.
}
}
您可以使用普通JarFile constructor将内容写入JAR文件,但看起来您需要纯文本文件。虽然您可以在应用程序运行时更新应用程序的JAR文件,但大多数程序都不会这样做,因为它很奇怪。