У меня есть программа Java, которая хранит/восстанавливает данные из загрузки файлов .txt, расположенных на моем диске C. В настоящее время путь к файлам для них жестко закодирован в моей программе Java.Доступ к внешним ресурсам из пользовательского пути к файлу (Java)
Теперь я хочу распространять это программное обеспечение, и мне интересно, как я могу его сделать так, чтобы пользователь мог указать местоположение файла во время установки, а затем я могу указать свою программу на это место без жесткого кодирования.
Это довольно стандартная функциональность, но я изо всех сил пытался найти, как ее достичь. Могу ли я использовать относительные пути к файлам, т. Е. Иметь .exe для java-программы в той же папке, что и файлы .txt, или мне нужно использовать что-то вроде путей реестра Windows?
Большое спасибо за помощь.
Приветствия, Робин
Я бы сэкономил себе и пользователю проблемы. Используйте «user.home» + папку в качестве местоположения. Большинство вещей хранится по умолчанию в домашнем каталоге: maven, ssh, gradle, shell history. Нет необходимости вращать его по-другому – efekctive
Спасибо за ваш ответ, просто для уточнения, это просто положить его в папку C:/Users/Person и зафиксировать это как известное место, в которое он будет всегда установлен, не так ли? Таким образом, это, по сути, лучший способ жесткого кодирования корневого местоположения пользователя. –
Да. Когда вы создаете путь, начинайте с родительского каталога System.getProperty («user.home»). Не забудьте также использовать File.separator, чтобы избежать конфликтов между \ и/ – efekctive