В моем Java-приложении мне нужно выбрать путь, используя JFileChooser. Код, который я написал, выглядит следующим образом:
jfChooser = new JFileChooser();
jfChooser.setCurrentDirectory(new java.io.File("."));
jfChooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
if (jfChooser.showOpenDialog(this) == JFileChooser.APPROVE_OPTION) {
System.out.println("getCurrentDirectory(): "+ jfChooser.getCurrentDirectory());
System.out.println("getSelectedFile() : "+ jfChooser.getSelectedFile());
tfPath.setText(jfChooser.getSelectedFile().getAbsolutePath()); // the selected path set to textfield which is lated get by the program
}
else {
System.out.println("No Selection ");
}
Я получаю путь правильно. Например, здесь я получаю путь (в ОС Windows)
String choosedPath=tfPath.getText().trimm();
Теперь на самом деле я хочу создать еще один каталог по заданному пути (т.е. внутри каталога новой папки) программно.
Для этого у меня есть новое имя каталога "newdir", поэтому строка, переданная конструктору файлов для создания этого каталога, выглядит следующим образом:
File createFolder = new File("choosedPath"+"\\"+"newdir");
Теперь проблема заключается в том, что мое приложение может работать в Windows или в Linux, поэтому в зависимости от того, какой разделитель пути к файлу меняется (т. Е. «/» Для Windows и «\» для Linux)
Как мне преодолеть эту проблему, чтобы получить косые черты в пути в соответствии с ОС?