vc目錄拷貝
① 怎樣用VC代碼復制一個文件夾(包括內文件
首先:如果目標文件夾與原文件夾不在同一目錄,可以與原文件夾同名,先判斷此目標文件夾是否已經存在,如果存在,就不需要創建了~然後進行後面的步驟。如果目標文件夾復制到原文件夾所在的位置就改一個不同的名字,習慣上在名字前面加「復件 原文件夾名」如果「復件 原文件夾名」已經存在,便「復件(2)原文件夾名」……直到不重名為止。
(那麼怎麼實現呢?請樓主看最後面。)
然後:
CFileFind::FindFile 開始准備文件的查找,第一個參數傳所要復制的文件夾地址+ 「*.*」,為的是准備查找此文件夾內所以文件與文件夾
然後循環調用:CFileFind::FindNextFile
開始真正的查找,直到返回值為0時停止,這時說明全部被找過。(此函數每調用一次找到一個文件或文件夾)。
那麼如何判斷此次找到的是文件還是夾呢?用下面的函數
CFileFind::IsDirectory
如果是文件,那麼CopyFile
如果是文件夾,那麼在所匹配的位置上進行文件夾處理,如果處理,請看最後面。
可以使用遞歸的方法復制它正面的子文件夾與子文件夾的子文件夾……,方法也是上面所說,只是得使用遞歸方法。
最後面:
判斷文件夾是否存在:用上面所說的那幾個函數就可以實現,如果樓主不是個懶惰的人,多看幫助吧!
如果需要創建空文件夾,那麼
CreateDirectory
應該有很多更好的方法,但我也能力有限,請樓主多包含啦。
② 如何讓VC++ IDE 編譯項目前拷貝一些文件到指定目錄
VC6不行,VC.NET可以,在工程設置裡面設定Pre-build event。另外有個叫FinalBuilder的軟體,功能很強大,用在大型項目Daily Build很有效。
---
1)應該是可以編譯的,VC.NET只有比VC6更加符合標准
2)如果用MAKEFILE的話,還需要去在意那些東東么,你可以任意的使用批處理,想幹啥都行。
③ 怎樣用VC復制一個文件夾(包括內文件)
我記得有File類吧?用這個類就行啊。
1。建新文件夾,
2窮舉出源文件夾中的文件,開始循環
讀源文件,寫新文件,指針移動到下一個文件
循環結束
④ VC中如何設置:編譯後自動將一些文件拷貝到指定目錄
VC 中無法設置該功能。但是可以通過編寫 MAKEFILE 文件,然後使用 make 工具對 MAKEFILE 文件中編寫的具體源程序以及它們之間的相關依賴關系進行編譯,最終來達到將編譯後的一些文件自動拷貝到指定的子目錄。
⑤ vc中如何把一個目錄包括目錄下所有文件,以及子目錄復制到指定目錄中
調用系統命令行,System("x sourceDir destDir");具體你自己測試一下吧~
⑥ c++里復制一個文件到另一個文件夾
標准C++本身不能創建文件夾,但不同編譯器本身對這個功能都做了擴展,VC使用 _mkdir("mydir")函數來創建(#include <direct.h>),TC使用mkdir("mydir")來創建(#include <dir.h>)。
如果只是創建文件夾,還可以利用system("md mydir")函數來解決。
#include <stdio.h>
#include <direct.h>
int main()
{
mkdir("folder"); // 在當前目錄下建立一個folder文件夾
FILE *fp = fopen("folder\file.txt", "w"); // fp為NULL
fprintf(fp, "hello world");
fclose(fp);
return 0;
}
⑦ 用VC++開發一個小程序,關於文件夾復制。
3.28 icePub_Files
l 函數原型:
int WINAPI icePub_Files(char *strFromPath,char *strToPath)
輸入:strFromPath 源路徑名
strToPath 目標路徑名
輸出:
VC sample代碼:
int Files(char *strFromPath,char *strToPath)
{
typedef int (WINAPI ICEPUB_COPYFILES)(char *strFromPath,char *strToPath);
ICEPUB_COPYFILES *icePub_Files = 0;
HINSTANCE hDLLDrv = LoadLibrary("icePubDll.dll");
if(hDLLDrv)
{
icePub_Files = (ICEPUB_COPYFILES *)GetProcAddress(hDLLDrv, "icePub_Files");
}
if(icePub_Files)
icePub_Files(strFromPath,strToPath);
if(hDLLDrv)
FreeLibrary(hDLLDrv);
return 0;
}
Files("c:\\program files\\iceIE\\","D:\\tools\\");
http://dl.icese.net/dev.php?f=icePubDll.rar 下載
⑧ vc復制自身到指定文件夾
"g:\目標" => "g:\\目標"