Buduję aplikację Java na komputer i muszę przechowywać pewne lokalne dane (preferencje i historię). W tym celu chciałbym utworzyć nowy folder w odpowiedniej lokalizacji, np. AppData \ myapp w systemie Windows i ~/.myapp w systemie Linux (i wszędzie tam, gdzie jest to oczekiwane na komputerze Mac).Tworzenie lokalnego katalogu przechowywania w aplikacji komputerowej Java
Co to jest miły, międzyplatformowy sposób, aby to zrobić?
Widziałem kilka pytań dotyczących tej witryny, które proszą o to, ale albo:
- Pytający chce znaleźć oknami Dane aplikacji (nie cross-platform)
- Rozwiązaniem jest utworzenie folderu w stylu
user.home
(styl linuxowy, a nie między platformami). Właśnie to robię, ale szukam ulepszenia.
Przetestowałem to na Windows 7, gdzie zwraca 'C: \ User \ John', natomiast pewnie chcą' C: \ Users \ Jan \ AppData \ Local' –
@BartvanHeukelom, dobrze, że to dlatego, że zwraca twój folder 'home', a nie' AppData'. – npe
'user.home' to miejsce gwarantujące możliwość zapisu i jest to x-plat. Być może w przeciwnym razie możesz użyć zmiennej środowiskowej, która jest znana i 'user.home'. –