У меня есть сетевой диск, сопоставленный как:
net use h: \ ip \ servername
У меня есть обычное Java-приложение, которое будет читать текстовый файл с этого диска.
Код:
File file = new File("H:\\MyFile.txt");
try {
byte[] bytes = Files.readAllBytes(Paths.get(file.getAbsolutePath()));
} catch (IOException ex) {
Logger.getLogger(JavaApplication25.class.getName()).log(Level.SEVERE, null, ex);
}
Когда я запускаю эту программу со своего компьютера (Windows 7 или с другого компьютера с Windows Vista), программа запускается без каких-либо проблем.
ОднакоКогда я запускаю эту программу с компьютера с Windows 10, я получаю следующую ошибку:
java.nio.file.NoSuchFileException: H:\MyFile.txt
Но если я запускаю приложение, используя следующий код, оно работает:
File file = new File("\\ip\servername\MyFile.txt");
try {
byte[] bytes = Files.readAllBytes(Paths.get(file.getAbsolutePath()));
} catch (IOException ex) {
Logger.getLogger(JavaApplication25.class.getName()).log(Level.SEVERE, null, ex);
}
Как использовать букву подключенного диска вместо полного адреса?