用 java 写入 ~/Library/ApplicationSupport/*?
Write to ~/Library/ApplicationSupport/* with java?
我正在为 Java 中的 Mac 编写一个应用程序,需要存储一些首选项文件。默认情况下,它们似乎存储在用户文件夹中,但我想将文件存储在 Library/ApplicationSupport 文件夹中,但我似乎不知道该怎么做。
我试过 File file = new File("/Library/ApplicationSupport/AppName");
然后 file.mkdir()
但它一直返回 false。我试过在 /Library/
前面添加 ~
,但也没有用。
我也试过将文件写入 FileOutputStream 上的所需目录,但也没有成功。我对其他存储我的首选项文件的方式持开放态度,我只是不希望它们以对用户有干扰的方式存储。
谢谢!
您无法写入 /Library/ApplicationSupport
,因为您的用户没有权限。
普通的Java io 类不理解“~”,所以要写到~/Library/ApplicationSupport
,你需要:
System.getProperty("user.home") + "/Library/ApplicationSupport"
我正在为 Java 中的 Mac 编写一个应用程序,需要存储一些首选项文件。默认情况下,它们似乎存储在用户文件夹中,但我想将文件存储在 Library/ApplicationSupport 文件夹中,但我似乎不知道该怎么做。
我试过 File file = new File("/Library/ApplicationSupport/AppName");
然后 file.mkdir()
但它一直返回 false。我试过在 /Library/
前面添加 ~
,但也没有用。
我也试过将文件写入 FileOutputStream 上的所需目录,但也没有成功。我对其他存储我的首选项文件的方式持开放态度,我只是不希望它们以对用户有干扰的方式存储。
谢谢!
您无法写入 /Library/ApplicationSupport
,因为您的用户没有权限。
普通的Java io 类不理解“~”,所以要写到~/Library/ApplicationSupport
,你需要:
System.getProperty("user.home") + "/Library/ApplicationSupport"