2012-07-16 44 views
0

我嘗試使用wxMkdir函數在我的C++程序中創建一個新目錄。目錄 /home/test/Documents/MATLAB/mydata/demo已經存在。但是,下面的代碼Ubuntu上的wxMkdir

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

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

} 

會彈出一個運行時錯誤對話框說

目錄 '/家/測試/文檔/ MATLAB/MYDATA /演示/ A' 無法創建(誤差2 :沒有這樣的文件或目錄)

和目錄demo下的目錄A將不會被創建。但是,如果我將所需目錄更改爲/home/test/Documents/MATLAB/mydata/A,則一切正常。

那麼在wxWidgets的Ubuntu實現中,wxMkdir的最大目錄深度是多少?但是,在Mac下沒有看到此問題。我搜索了網頁,並沒有得到任何有意義的東西。任何人有更好的主意?

回答

0

如果mkdir失敗,出現「沒有這樣的文件或目錄」的錯誤,通常意味着父目錄不存在(或者是一個懸掛的符號鏈接)。想必這同樣適用於wxMkdir

/home/test/Documents/MATLAB/mydata/demo已經存在嗎?可以肯定的是,它是一個目錄嗎?

(如果這不是問題,我會刪除這個答案,並將其添加註釋。)

+0

基思,你是絕對正確的。我剛查過,發現'demo'目錄實際上是'Demo'目錄。難怪它沒有奏效。謝謝! – 2012-07-16 23:11:57