Java: File.toURI (). ToURL () в файле Windows
Система, на которой я работаю, - это Windows XP с JRE 1.6.
Я сделаю это :
public static void main(String[] args) {
try {
System.out.println(new File("C:\\test a.xml").toURI().toURL());
} catch (Exception e) {
e.printStackTrace();
}
}
и я получаю это:file:/C:/test%20a.xml
Почему данный URL не имеет двух косых черт передC:
? Я ожидалfile://C:...
, Это нормальное поведение?
EDIT :
Из исходного кода Java: java.net.URLStreamHandler.toExternalForm (URL)
result.append(":");
if (u.getAuthority() != null && u.getAuthority().length() > 0) {
result.append("//");
result.append(u.getAuthority());
}
Кажется, что часть Authority URL файла пуста или пуста, и поэтому двойная косая черта пропускается. Итак, что такое авторитетная часть URL и действительно ли она отсутствует в файловом протоколе?