0
人!私はuser.homeプロパティにフォルダを追加しようとしています。私はちょうど1つの追加のフォルダを使用している間、それはうまく動作します。しかし、別の2つの追加をしようとすると(user.home + folder1 + folder2 + folder3のように見えます)、--- java.lang.IllegalArgumentException:フォルダパラメータは有効なフォルダ--- でなければなりません。私にはいくつかの制限がありますが、どこを見つけることはできません。 java.lang.IllegalArgumentExceptionが:user.homeに2つ以上のフォルダを追加する方法
String fullRoute = null;
File homeDir = new File("MLog");
if (!SiteCo.getEditor().getText().isEmpty() &&
!InciDate.getEditor().getText().isEmpty()) {
homeDir.mkdirs();
fullRoute = System.getProperty("user.home") + File.separator +
//SaveVarTo.getLastVisitedDirectory() +
SaveVarTo.AddPath(SiteCo.getValue().toString()) +
File.separator + SaveVarTo.AddPath(InciDate.getValue().toString());
}
else {homeDir.mkdirs();
// File.separator+homeDir.toString() - without it
fullRoute =
System.getProperty("user.home")+File.separator+homeDir.toString();}
System.out.println(fullRoute);
fileChooser.setInitialDirectory(new File(fullRoute));
fileChooser.getExtensionFilters().addAll(
new FileChooser.ExtensionFilter("XML Files", "*.xml"));
//sample of method
public class Variables{
public String AddPath(String name) {
if (!name.isEmpty()) {
//File nou = new File(getLastVisitedDirectory() +"\\" + name);
File nou = new File(name);
if (!nou.exists()) {
nou.mkdirs();
} else {
System.out.println("Folder already exists");
}
}
else{name = null;}
return name;
}}
に起因するエラーログ –
を共有してくださいフォルダのパラメータが有効なフォルダにする必要がありcom.sun.glass.ui.CommonDialogs.convertFolder(CommonDialogs.javaで \t: JavaFXのでcom.sun.javafx.tk.quantum.QuantumToolkit.showFileChooser(QuantumToolkit.java:1496) \tでcom.sun.glass.ui.CommonDialogs.showFileChooser(CommonDialogs.java:190) \tにおける238) \t .stage.FileChooser.showDialog(FileChooser.java:416) javafx.stage.FileChooser.showSaveDialogで(FileChooser.java:392)ru.mlog.xmlread.gui.MainController.SaveToButtonで \t(MainController.java:142) \t ... 62もっと –
印刷のSystem.out .print(fullRoute)を実行してから、適切なパスが正しいかどうかを確認します。パスが正常であればパスは終了し、終了しない場合はパスが終了します。それはうまくいくでしょう –