В чем разница между "user.dir" и "."?

Я вижу вопрос "что означает user.dir?" как это определяется, почему он не работает должным образом, как это изменить. Но я не вижу основного вопроса: зачем нам нужен "user.dir", после всех поддерживаемых операционных систем "." для текущего каталога?

я вижу это user.dir = абсолютный путь к текущему каталогу . относительно. Это просто сокращение для File(".").getAbsoluteFile().getParentFile().getName()?

2 ответа

Решение

Я думаю, что цель "user.dir" Это свойство совпадает с командой pwd в Linux или GetCurrentDirectory в Windows. Я думаю, что это более понятно, потому что мы четко используем pwd когда мы хотим получить (абсолютный) путь к текущему каталогу. По сравнению, . является сокращением для текущего каталога, когда вам не интересно его знать, а просто скажите системе, что мы хотим использовать текущий путь. В этом случае целесообразно использовать сокращение. Первые средства current path relative to the rootвторой - current path relative to the current path,

Разница может быть важной, когда вы общаетесь между процессами. Если вы передаете путь к другому процессу в вашей системе, он может иметь другой текущий каталог, и, таким образом, вы предпочтете абсолютный путь. С другой стороны, если вы передаете путь в другую систему, тогда предпочтительным может быть относительный путь.

Потому что текущий каталог может меняться в зависимости от программы, перемещающейся по файловой системе. Каталог, из которого запущена программа, не может быть изменен.

Другие вопросы по тегам