Работа с обратной косой чертой при создании объекта File в Windows - PullRequest
0 голосов
/ 29 ноября 2018

Я создаю File объект для использования в качестве вложения электронной почты.Я работаю над Eclipse в Windows 10. Имя файла String, предоставленное в конструкторе, имеет формат /path/to/file.

File attachment = new File(fileName);
DataSource source = new FileDataSource(attachment);
messageBodyPart.setDataHandler(new DataHandler(source));
...

Однако при отправке почты я получаю следующее исключение:

javax.mail.MessagingException: IOException while sending message;
  nested exception is:
    java.io.FileNotFoundException: \path\to\file (The system cannot find the path specified)

Я проверил методы File getPath() и toString(), чтобы узнать, что объект создан с обратной косой чертой "\"

Вот как класс File разрешает разделитель:

public static final String separator = SystemProperties.getProperty("file.separator");

и затем заменяет прямые косые черты на обратные.

Есть ли способ заставить Java использовать прямые косые черты в Windows?

...