Я пытаюсь скопировать файл, используя следующий код:
File targetFile = new File(targetPath + File.separator + filename);
...
targetFile.createNewFile();
fileInputStream = new FileInputStream(fileToCopy);
fileOutputStream = new FileOutputStream(targetFile);
byte[] buffer = new byte[64*1024];
int i = 0;
while((i = fileInputStream.read(buffer)) != -1) {
fileOutputStream.write(buffer, 0, i);
}
Для некоторых пользователей targetFile.createNewFile
приводит к этому исключению:
java.io.IOException: The filename, directory name, or volume label syntax is incorrect
at java.io.WinNTFileSystem.createFileExclusively(Native Method)
at java.io.File.createNewFile(File.java:850)
Имя файла и имя каталога выглядят правильно. Каталог targetPath
проверяется на наличие до того, как будет выполнен код копирования, и имя файла будет выглядеть так: AB_timestamp.xml
Пользователь имеет права на запись в targetPath
и может без проблем копировать файл с помощью ОС.
Поскольку у меня нет доступа к машине, это происходит еще и не может воспроизвести проблему на моем собственном компьютере. Я обращаюсь к вам за подсказками по причине этого исключения.