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:\\目标"