0

我尝试使用wxMkdir函数在我的 c++ 程序中创建一个新目录。该目录 /home/test/Documents/MATLAB/mydata/demo已经存在。但是下面的代码

wxString dataDirectory = wxT("/home/test/Documents/MATLAB/mydata/demo/A");

if(! wxDirExists(dataDirectory))
{
    wxMkdir(dataDirectory); 

}

会弹出一个运行时错误对话框,说

无法创建目录“/home/test/Documents/MATLAB/mydata/demo/A”(错误2:没有这样的文件或目录)

并且不会创建目录A下的目录。demo但是,如果我将所需的目录更改为/home/test/Documents/MATLAB/mydata/A,一切正常。

那么在 wxWidgets 的 Ubuntu 实现中wxMkdir是否存在最大目录深度?但是,在 Mac 下不会出现此问题。我在网上搜索并找不到任何有意义的东西。有人有更好的主意吗?

4

1 回答 1

0

如果mkdir失败并出现“没有这样的文件或目录”错误,通常意味着父目录不存在(或者是一个悬空符号链接)。大概同样适用于wxMkdir.

是否/home/test/Documents/MATLAB/mydata/demo已经存在?只是为了确定,它是一个目录吗?

(如果这不是问题,我将删除此答案并将其添加为评论。)

于 2012-07-16T22:14:31.710 回答