鱼C论坛

 找回密码
 立即注册
查看: 2490|回复: 9

vc下如何将一个指定路径下的文件拷贝到另一个盘符的目录下...

[复制链接]
发表于 2014-3-5 20:46:13 | 显示全部楼层 |阅读模式
2鱼币
刚学C不久,望照顾...

最佳答案

查看完整内容

你说的CopyFile( )函数也能实现 刚才你好像写错了 CopyFile("C:\\1.txt","D:\\",FALSE); 改成 CopyFile("C:\\1.txt","D:\\1.txt",FALSE); 应该可以
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-3-5 20:46:14 | 显示全部楼层

你说的CopyFile( )函数也能实现
刚才你好像写错了
CopyFile("C:\\1.txt","D:\\",FALSE);
改成
CopyFile("C:\\1.txt","D:\\1.txt",FALSE);
应该可以
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-3-5 20:53:47 | 显示全部楼层
最简单的方法就是用dos命令
system("copy xxxx\\xxxx.xxx空格yyyy\\xxxx.yyy");
空格前是源路径+文件名,后是目标源路径+文件名
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-3-5 20:56:08 | 显示全部楼层
原型:
BOOL CopyFile{
LPCTSTR lpExistingFileName, //源文件名
LPCTSTR lpNewFileName, //目标文件名
BOOL bFailIfExists;
};

参数 类型及说明:
lpExistingFileName String,源文件名
lpNewFileName String,目标文件名
bFailIfExists Long,如果设为TRUE(非零),那么一旦目标文件已经存在,则函数调用会失败。否则目标文件被改写

//复制,不覆盖已经存在的文件
        if(!CopyFile(argv[2],argv[3],TRUE))
        {
            //LastError == 0x50,文件存在。
            if(GetLastError() == 0x50)
            {
                printf("文件%s已经存在,是否覆盖?y/n: ",argv[3]);
                if('y'==getchar())
                {
                    //复制,覆盖已经存在的文件。
                    if(!CopyFile(argv[2],argv[3],FALSE))
                    {
                        printf("复制文件错误,%d",GetLastError());
                    }
                    else
                    {
                        printf("复制成功!");
                    }
                }
                else
                {
                    return 0;
                }
            }
        }
        else
        {
            printf("复制成功!");
        }
    }
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2014-3-5 21:01:33 | 显示全部楼层
我需要的是在vc下实现...,找了几个函数但还是不行
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2014-3-5 21:02:37 | 显示全部楼层
machimilk 发表于 2014-3-5 20:53
最简单的方法就是用dos命令
system("copy xxxx\\xxxx.xxx空格yyyy\\xxxx.yyy");
空格前是源路径+文件名, ...

我需要vc下实现...可不可以???
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2014-3-5 21:05:36 | 显示全部楼层
超级忍者龟 发表于 2014-3-5 20:56
原型:
BOOL CopyFile{
LPCTSTR lpExistingFileName, //源文件名

我试了CopyFile( )函数, 如CopyFile("C:\\1.txt","D:\\",FALSE); 结果D盘目录下根本没有1.txt文件
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-3-5 21:11:39 | 显示全部楼层
ysm 发表于 2014-3-5 21:02
我需要vc下实现...可不可以???

可以啊,但是要加头文件
#include <iostream>
using namespace std;
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2014-3-5 21:20:45 | 显示全部楼层
machimilk 发表于 2014-3-5 21:11
可以啊,但是要加头文件
#include
using namespace std;

恩恩,可以实现了,弱弱的问句:如果不使用这个system()系统函数,还有没有别的C语言函数可以实现???
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2014-3-7 11:48:53 | 显示全部楼层
machimilk 发表于 2014-3-5 21:43
你说的CopyFile( )函数也能实现
刚才你好像写错了
CopyFile("C:\\1.txt","D:\\",FALSE);

恩恩,好的,谢谢!!!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-23 18:49

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表