Я пытаюсь записать текст в файл.
Если я использую файл = "C: \ Temp \ Dir \ Test.txt", то у меня нет проблем
Если яиспользуйте файл с кириллицей в path = "C: \ Temp \ Папка на русском \ Test.txt", тогда у меня исключение
Примечание. каталоги не создаются до запуска кода
public Boolean writeStringToFile(String content, File file) {
status = false;
try (FileOutputStream fos = new FileOutputStream(file, false);
OutputStreamWriter osw = new OutputStreamWriter(fos, "UTF-8");
BufferedWriter fileWriter = new BufferedWriter(osw)) {
fileWriter.write(content);
status = true;
} catch (FileNotFoundException e) {
logger.error("File {}/{} can not be created.", file.getPath(), file.getName(), e);
}
return status;
}
для тестирования:
writeStringToFile("writeStringToFile is ok. Кодировка UTF-8",
new File(Files.temporaryFolderPath() + "Папка на русском" + File.separator + "Test.txt"))
assertTrue(file.exists());