[Paths] метод get создает путь только путем заботы system-file-separator , который поможет в кроссплатформенном выполнении программ, например,
System.out.println(Paths.get(File.separator,"A", "B"));
вернет
В Windows: \\ A \ B \
В Unix: / A / B /
Сведения о File.separator равны
Системно-зависимый символ разделителя имен по умолчанию.Это поле инициализируется, чтобы содержать первый символ значения systemmproperty file.separator.В системах UNIX значение этого поля равно '/';в системах Microsoft Windows это '\'.
Специфично для задаваемого вопроса
Я считаю, что это из-за Абсолютного пути
, например, в Windows JDK1.7
System.out.println(Paths.get("C:","A", "B")); **Output** : C:\A\B
System.out.println(Paths.get("C:","A", "0.hzg")); **Output** : C:\A\0.hzg
System.out.println(Paths.get(File.separator,"A", "B")); **Output** : \\A\B\
System.out.println(Paths.get(File.separator,"A", "0.hzg")); **Output** : \\A\0.hzg\
Надежды, которые помогают