gpt4 book ai didi

c++ - 访问配置目录的跨平台方式

转载 作者:可可西里 更新时间:2023-11-01 09:26:07 26 4
gpt4 key购买 nike

有没有什么跨平台的方法可以找出哪个目录应该是我的应用程序配置?

例如,Mozilla Firefox 在 Linux 上使用/home/user/.mozilla,在 Windows 上使用 %APPDATA%\Mozilla。 http://kb.mozillazine.org/Profile_folder_-_Firefox#Navigating_to_the_profile_folder

是否有任何处理它的库,或者只是很多#ifdef?

最佳答案

Mozilla 是一个古老的应用程序,它的配置在 $HOME/.mozilla 中保存了很长一段时间。但是,鼓励新应用将配置文件存储在 $HOME/.config/myappname 中。

我假设大多数通用跨平台库都有获取基本配置目录的方法(在 Linux 上通常是 $HOME/.config/,在 Windows 上是 %APPDATA)。例如,GLib 有 g_get_user_config_dir() ,您需要做的就是将您的应用程序名称附加到结果(未经测试的代码):

gchar *
myapp_get_config_dir ()
{
const gchar *user_config_dir;
gchar *my_config_dir;

user_config_dir = g_get_user_config_dir ();
my_config_dir = g_build_filename (user_config_dir, "myappname", NULL);

return my_config_dir;
}

关于c++ - 访问配置目录的跨平台方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6970314/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com