如何实现复制文件夹

offer2003 2003-04-30 10:59:00
只找到copyfile函数,不知道拷贝文件和文件夹可不可以都用这个函数
还是拷贝文件夹需要自己实现,相当于把文件夹里的文件一个一个拷贝过去。
请指点,谢谢!
...全文
45 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
ThinkX 2003-05-01
  • 打赏
  • 举报
回复
COPY & PASTE
net205 2003-05-01
  • 打赏
  • 举报
回复
1.利用Xcopy这个Dos命令来进行,用Shell来调用Command窗口最简单。
2.

AnsiString asiSrc = "d:\\tmp\\*";
AnsiString asiDst = "d:\\tmpl\\";

SHFILEOPSTRUCT FileOp;
FileOp.hwnd = this;
FileOp.wFunc = FO_COPY;
FileOp.pFrom = asiSrc.c_str();
FileOp.pTo = asiDst.c_str();
FileOp.fFlags = FOF_ALLOWUNDO;
FileOp.hNameMappings = NULL;
FileOp.lpszProgressTitle = strTitle;
nOk = SHFileOperation(&FileOp);
if(!nOk)
{
ShowMessage("copy error\n");
return;
}

zzhong2 2003-05-01
  • 打赏
  • 举报
回复
http://expert.csdn.net/Expert/topic/1580/1580212.xml?temp=.3250086
zzhong2 2003-05-01
  • 打赏
  • 举报
回复
TSHFileOpStruct FileOp;
AnsiString DestinationDir,SourceDir;
SourceDir="c:\\test\\*.*";
DestinationDir="d:\\test\\";

FileOp.hwnd=Handle;
FileOp.wFunc=FO_COPY;
FileOp.pFrom=SourceDir.c_str();
FileOp.pTo=DestinationDir.c_str();
FileOp.fFlags=FOF_NOCONFIRMMKDIR|FOF_CONFIRMMOUSE|FOF_NOCONFIRMATION;
FileOp.fAnyOperationsAborted=false;
FileOp.hNameMappings=NULL;
FileOp.lpszProgressTitle="复制文件";

SHFileOperation(&FileOp);

//以上是把c盘test目录下所有文件、目录、子目录拷贝到d:盘test目录下;覆盖拷贝、不出提示框
//FileOp.fFlags参数决定了:覆盖拷贝、不出提示框,要想改变拷贝模式看看shellapi.h文件吧

ehom 2003-05-01
  • 打赏
  • 举报
回复
API SHFileOperation
albeta 2003-05-01
  • 打赏
  • 举报
回复
用递归咯。逐层建立目录,复制文件。
qibo999 2003-04-30
  • 打赏
  • 举报
回复
以前很多帖子的,你先搜一下啊

13,825

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧