Я использую библиотеки Apache для редактирования файла DOCX и хочу, чтобы пользователь выбрал каталог, в котором нужно сохранить его файл. Неважно, какую папку выбрать, она всегда вызывает исключение и говорит «путь (доступ запрещен)», однако, если я выбираю каталог в своем коде, он работает отлично. Вот часть моего кода:
XWPFDocument doc = null;
try {
doc = new XWPFDocument(new ByteArrayInputStream(byteData));
} catch (IOException e) {
e.printStackTrace();
}
/* editing docx file somehow (a lot of useless code) */
Alert alert = new Alert(Alert.AlertType.INFORMATION);
DirectoryChooser dirChooser = new DirectoryChooser();
dirChooser.setTitle("Choose folder");
Stage stage = (Stage) (((Node) event.getSource()).getScene().getWindow());
File file = dirChooser.showDialog(stage);
if (file != null) {
try {
doc.write(new FileOutputStream(file.getAbsoluteFile()));
alert.setContentText("Saved to folder " + file.getAbsolutePath());
} catch (IOException e) {
alert.setContentText(e.getLocalizedMessage());
}
} else {
try {
doc.write(new FileOutputStream("C://output.docx"));
alert.setContentText("Saved to folder C:\\");
} catch (IOException e) {
alert.setContentText(e.getLocalizedMessage());
}
}
alert.showAndWait();
Помогите, пожалуйста, понять, что я делаю не так :(
doc.write(new FileOutputStream(file.getAbsoluteFile()+"\\EditedDoc.docx"));
- person JKostikiadis   schedule 14.06.2018System.out.println()
для отладки кода, например, распечатайтеfile.getAbsoluteFile()
и проверьте, что вы получите. - person JKostikiadis   schedule 14.06.2018