即時通訊困難搞清楚爲什麼我的文件不會複製。下面的代碼的簡要部分:boost文件系統copy_file「成功」,但沒有複製文件
(dir_itr
是directory_iterator & root
是路徑)
if (!(is_directory(dir_itr->path())))
{
cout << "copying: " << dir_itr->path().filename() << endl;
try
{
copy(dir_itr->path(), root);
remove(dir_itr->path());
} catch (filesystem_error& ex) {
//more code
結果如在命令窗口如下:
boost::filesystem::copy_file: The operation completed successfully:
"C:\Documents and Settings\R\Desktop\New Folder\New Folder (2)\New Bitmap Image 3.bmp",
"C:\Documents and Settings\R\Desktop\New Folder"
然而沒有文件是複製過來。
我基本上只是試圖從文件夾c:\x\y\file.file
移動所述文件c:\x
我假設爲什麼我不能移動它,因爲我需要一個完整的文件名,而不只是一個目錄的東西?如果是這樣的話,我該如何將路徑根轉換爲字符串,以便我可以向其添加文件名? (IM剛開一千個錯誤,如果我去嘗試,他們這麼久我不能一路向後滾動的窗口看到它開始的地方)
您的輸出與您的源代碼不符。我沒有看到任何「複製」陳述。 – 2013-03-01 02:07:28
哦,我沒有複製所有的輸出,因爲在那裏有一個循環語句和更多的cout的。 「boost :: filesystem :: copy_file:操作成功完成:」加上接下來的兩行,是什麼是由boost文件系統自動打印的,當你使用copy_file函數時,輸出其實不是問題,它的只是我沒有看到任何結果 – user1324674 2013-03-01 02:15:07
我寧願'boost :: filesystem'函數實際輸出字符串作爲其操作的一部分。你確定這不是來自別的東西嗎? – 2013-03-01 02:31:04