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では見られません。Webを検索しましたが、意味のあるものが見つかりませんでした。誰かもっと良いアイデアがありますか?

4

1 に答える 1

0

mkdir「そのようなファイルまたはディレクトリはありません」というエラーで失敗した場合は、通常、親ディレクトリが存在しない(またはぶら下がっているシンボリックリンクである)ことを意味します。おそらく同じことがに当てはまりますwxMkdir

/home/test/Documents/MATLAB/mydata/demoすでに存在しますか?そして、念のために言っておきますが、それはディレクトリですか?

(それが問題でない場合は、この回答を削除してコメントとして追加します。)

于 2012-07-16T22:14:31.710 に答える