【发布时间】:2011-06-15 18:01:38
【问题描述】:
我目前正在用 C 编写一个程序,它需要在磁盘上存储配置文件和各种缓存文件,以及一些永远不会更改的静态数据文件,并且可以安全地为所有用户共享。
我想将这些文件存储在操作系统的适当位置,如果可能的话,以可移植的方式......
例如,在 GNU/Linux 上:
$XDG_CONFIG_HOME/<program_rame>/ -- for configuration files
$XDG_CACHE_HOME/<program_name>/ -- for cache files
$XDG_DATA_DIRS/<program_name>/ -- for static files
而且,如果未设置这些,我可以使用推荐的默认值(“~/.config”、“~/.cache”和“/usr/share”)。 GNU/Linux 是最简单的。
但是,在 Windows 上,我不知道如何找到这些等价物。我认为它会在 AppData 中的某个地方,但是在哪里呢?而且,最重要的是,我如何以编程方式获得它?那么其他操作系统(尤其是 Mac OS,因为大多数其他 UNIX 也可以使用“GNU/Linux”方法)呢?
我对所有解决方案持开放态度,无论是否需要库。提前感谢您的帮助!
【问题讨论】:
标签: c cross-platform configuration-files