2010-10-18 4 views
1

Я попробовал программу, сравнивающую C: \ Program Files и C: // Program Files, которые я проверил с помощью compareTo() == 0, они равны. Но я сомневаюсь, есть ли разница между // & \ Есть ли разница? в чем разница между c:/program files и //?сомнение в пути к файлу

+0

Вы уверены, что не имеете в виду '\\' и '/'? – paxdiablo

+0

Я набрал \\ только его не придет, когда я набрал. Я, что знать разницу, если какой-либо b/w // & \\ – Sumithra

+0

Является ли ваш вопрос о файловой системе или о строковых литералах Java? – Basilevs

ответ

3

Нет никакой разницы, по крайней мере, в реализации Солнца. Win32FileSystem нормализует пути, преобразуя косые черты и удаляя повторяющиеся косые черты.

Если вы хотите быть на 100% портативный, использовать File.separator

1

Сепаратор между компонентами пути зависит от операционной системы. Java представляет собой путь к файлу, независимо от операционной системы, и вызывает равенство рассматриваемых значений. Преобразование в собственное представление выполняется на более низком уровне (как указал Божо), и вы не должны беспокоиться об этом. Тем не менее я бы рекомендовал использовать «/» в качестве разделителя, поскольку он более распространен в OS-мудре.

+0

Не используйте hard-code "/", используйте 'File.separator' или' System.getProperty ("file.separator") '. – Jonathan

+0

"conversion" + File.separator + "is" + File.separator + "more" "+ File.separator +" convinient " – Basilevs

+0

и есть java.net.URL/File.toURL() – Basilevs

Смежные вопросы