У меня есть файл cars.csv, как задать универсальный путь к этому файлу, чтобы с каждого компьютера компилятор его видел? Использовал такой способ:
getClass().getClassLoader().getResource(FILE_NAME).getFile()
Но хочу узнать существует ли что-то практичнее?
Обычно используется специальная директория, называется ресурсы
пример использования
Если создается мавен проект, то структура проекта уже будет содержать директории для тестов и ресурсов.
Второй вариант, задавать относительный путь, относительно точки вызова программы:
Path path = Paths.get("/someFile.csv");
Добавь к проекту библиотеку https://commons.apache.org/proper/commons-lang/download_lang.cgi
private final static String APP_HOME = "Имя директории";
private final static String FILE_NAME = "cars.csv";
private static String getAppHome() {
if (SystemUtils.IS_OS_WINDOWS) {
return System.getenv("APPDATA") + "/" + APP_HOME + "/" + FILE_NAME;
} else if (SystemUtils.IS_OS_LINUX) {
return SystemUtils.USER_HOME + "/." + APP_HOME + "/" + FILE_NAME;
} else if (SystemUtils.IS_OS_MAC) {
return SystemUtils.USER_HOME + "/Library/Application Support/" + APP_HOME + "/" + FILE_NAME;
}
return SystemUtils.USER_HOME + "/." + APP_HOME + "/" + FILE_NAME;
}
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости