【发布时间】:2026-02-09 17:15:02
【问题描述】:
我已经熟悉如何创建文件并将它们放在“user.home”中。我在 Mac 上,所以对 PC 的文件夹不太了解,但在我的库中,有应用程序支持。有没有办法在 PC 的 %appdata% 中放置目录?
【问题讨论】:
-
什么是PC?您想在 MAC 上获取“应用程序支持”文件夹吗?还是在 Windows 上获取“ApplicationData”文件夹?
-
他的意思是Windows上的“应用程序数据”文件夹,默认情况下是当前用户的
%APPDATA%。但是,我以前从未听说过 Windows 术语中的“应用程序支持”。顺便说一句,%APPDATA%需要管理员权限才能修改其内容。user.home的等效 Windows 文件夹是%USERPROFILE%。要使用任何 Windows 环境变量,只需使用System.getenv(string);。例如:System.getenv("USERPROFILE");或System.getProperty("user.home"); -
为什么不简单地使用
user.home(的子目录)作为路径?这应该适用于 OS X、Windows & *nix. -
是的,我的意思是 Windows 的应用程序数据,但 Mac 有它自己的应用程序支持。所以我想我会检查一个用户是否有
"user.home" + "\\Local Settings\\ApplicationData"(PC),如果没有,我就把它放在"user.home" + "/Library/Application Support"(MAC)中。 -
@AmundeepSingh 您可以使用
System.getProperty("os.name")来检测您首先使用的操作系统(OS)类型。