在哪里读取.DMG Mac OS文件中的数据文件夹和配置文件?

toto_tico

我正在开发适用于Windows和Mac的应用程序,我需要一些有关如何组织输入数据的文件结构(例如配置文件)的帮助,以便可以轻松地用于Mac。

这是我为Windows设置的方法:

我有一个非常简单的程序,可以从目录中读取一些数据data在Windows中,我创建了一个example.exe,该data文件夹位于文件夹旁边如果用户需要处理更多数据(通过电子邮件接收),则只需将文件放入文件夹中,然后双击example.exe

这是我为Mac Os做的:

我设法创建了DMG,但不知道将数据文件夹放在哪里对另一个文件夹(例如HOMEDesktop)进行硬编码有效,但是感觉不对。我想到了一个可以打开对话框以指定文件夹的按钮,但是随后我需要保存该路径,以便用户下次打开应用程序时使用为了保存此路径,我需要一个配置文件或工作区。因此,我再次需要一个可以找到配置文件的路径。

Mac可用性的角度来看预期的行为是什么,以及从目录位置和配置文件的角度来看,我将如何处理?

Drootang

我要说的是,将数据文件夹与macOS中的可执行python脚本并存是没有错的。

我假设这只是一个没有GUI的脚本。如果有一个GUI,我说应该鼓励用户将应用程序复制到/ Applications(或〜/ Applications)中,然后为用户提供一种使用对话框选择“数据”文件夹的方法。

我认为,适用于Windows和macOS的最佳解决方案是允许将数据目录的路径指定为命令行参数。如果未指定,则默认为./data

如果要保存用户指定的数据目录路径设置,则一种类似于Mac的好方法是使用该defaults系统。您可以使用defaults readdefaults write命令在脚本中轻松读取和写入默认值默认值使用反向域名表示法来帮助确保它们在所有应用程序中都是唯一的。

假设您的组织名为ttwidgets,如果您有一个名为ttwidgets.com的网站,并且此脚本名为pywidget,则可以使用domain com.ttwidgets.pywidget

设置默认值的语法是:

% defaults write com.ttwidgets.pywidget datapath /user/specified/path

然后由macOS管理并永久存储。您可以使用以下方法回读设置(如果再次存在):

% defaults read com.ttwidgets.pywidget datapath
/user/specified/path

如果未设置任何内容(例如,首次使用),则会收到错误消息(并且该命令返回非零返回码:

% defaults read com.ttwidgets.pywidget an_unset_variable
2018-04-21 12:08:40.179 defaults[12409:1472790]
The domain/default pair of (com.ttwidgets.pywidget, an_unset_variable) does not exist
% echo $?
1

这应该提供使用macOS内置的首选方法持久存储应用程序的键/值设置所需的所有工具。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Virtualbox是否在非Mac OS上支持DMG文件?

在MAC 10.8.5上安装Redis无效!DMG在哪里?未定义的符号 -?*&!

Mac OS X上的/ proc文件夹在哪里?

如何在Mac OS X系统中静默安装dmg文件(使用Shell脚本)?

Mac上的.profile文件在哪里?

Mac上的.zshrc文件在哪里?

sqlite文件在Mac上存储在哪里?

Mac DMG古怪-签名和“损坏”的应用程序

Mac上的Mozilla Firefox插件文件夹在哪里?

在Mac上,mpv播放器配置文件在哪里?

Mac OS X在哪里存储文件关联信息?

在哪里找到数据文件夹(处理中)

在哪里找到/浏览应用程序数据文件夹中的cookie?

XAMPP for MAC OS 10.12系统上的PHP文件夹在哪里?

如何打开.dmg文件?

mac os x 的 opencv 包在哪里?

Mac Yosimite中的apachectl在哪里

WSL中的配置文件在哪里?

如何让我的Python脚本转换成可执行.dmg文件for Mac吗?

Mac OS X-在哪里可以找到Chrome和Firefox临时文件?

Mac OSX上的PHP日志文件在哪里?

在Mac上的DefaultKeyBinding.dict文件在哪里

Mac Sierra v 10.12.2上的.htaccess文件位置在哪里?

在Mac OS中加密文件:通过DiskUtility进行的AES-DMG加密方法是否存在任何安全问题?

Mac OS X 10.10中包含的libiodbc的头文件在哪里?

在Mac OS X中使用Automator脚本弹出所有磁盘和dmg。

在Mac中读取文件

Maven:无法解决以下工件。在我的 Mac 上将朋友的 .m2 文件夹放在哪里?

JetBrains IDE 的配置文件夹在哪里?