Я знаю, что с помощью языков .NET, таких как C#, можно сделать что-то вродеВ java под Windows, как найти перенаправленную папку рабочего стола?
Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory)
найти перенаправлены расположение на рабочем столе. Однако, в Java, я не могу придумать хороший способ сделать это. Каков наиболее подходящий способ найти перенаправленный пользовательский каталог Desktop с Java без использования JNI? Конкретная цель здесь заключается в том, чтобы управлять ярлыком на рабочем столе, если пользователь хочет его, для приложения Java Web Start.
Это приложение необходимо записать в дерево «Данные приложения», а также, возможно, на Рабочий стол. Я делаю предположение, что %APPDATA%
всегда правильно заполняется, даже если папки перенаправлены, для поиска дерева «Данные приложения». Поэтому мой открытый вопрос заключается в том, как надежно найти папку «Рабочий стол».
ПРИМЕЧАНИЕ: Я считаю, что системное свойство Java ${user.home}
фактически (and erroneously) находит каталог рабочего стола пользователя через ключи реестра, а затем пытается перейти по одному каталогу, чтобы найти «домашний» каталог. Это отлично работает, когда никакие каталоги не перенаправляются, и в противном случае может или не может вернуть что-то полезное.
Насколько надежны это? Этот метод полностью недокументирован даже в Java 1.6. Похоже, что это 100% -ное поведение Windows в поведении, и это нормально, но эта нота кода будет вызываться только на Windows, но это не обнадеживает. – Eddie
этот метод НЕ является специфичным для системы и должен работать в любой системе, см. Следующую документацию: http://littletutorials.com/2008/03/10/getting-file-system-details-in-java/ –
Спасибо за связь. Это меня успокаивает. Меня не волновало отсутствие документации по API. Возможно, для JDK7 я предлагаю, чтобы этот JavaDoc был заполнен, если его еще нет. – Eddie