从相对路径创建dir和加载文件

时间:2015-06-08 12:53:52

标签: c gtk

我正在使用C和gtk,我需要在/home/demo/.config中创建一个目录,然后从这个目录加载一个相对路径的文件。我用C和gtk 2.0编写。

我目前使用g_build_filename,但只有在目录存在的情况下才能使用,但它不会创建新的。

感谢您的帮助!

编辑:

管理创建所需的目录。现在我需要检查文件是否存在。

像这样:

if(!file_exists)
{
//file doesn't exist
}
else if(file_exists)
{
//file_exists
}

1 个答案:

答案 0 :(得分:0)

在尝试访问文件之前,您可以使用g_mkdir_with_parents()创建目录。它将创建所有需要的目录。您不需要检查文件是否存在,只需打开它即可。如果文件不存在,open将失败,当然你需要理智地处理它。所有I / O都可能失败。

当然,您可能也不应该对/home/demo/.config部分进行硬编码,而是读出当前的用户名(或使用一些API,可能g_get_user_config_dir())。