vc关于文件拷贝

单个文件的拷贝

system  针对单个文件

CopyFile  针对单个文件

/**

@file_extension egg: .txt .png

**/

void CopyFileToDir(CString source_dir, TCHAR* dest_dir, TCHAR* file_extension) {

CString source, dest;

source.Format("%s*%s", source_dir, file_extension);

dest.Format("%s", dest_dir);

SHFILEOPSTRUCT s;

::ZeroMemory(&s, sizeof(s)); // Initialize the structure

s.hwnd = NULL;

s.wFunc = FO_COPY;

s.pFrom = source;

s.pTo = dest;

s.fFlags = FOF_SILENT | FOF_NOCONFIRMATION | FOF_NOCONFIRMMKDIR;

::SHFileOperation(&s);

//可用支持批量处理拷贝,支持单个文件拷贝,

//如果拷贝的目标目录路径或源目录路径里面带下划线,不能正常拷贝,不知道为什么??

//s.wFunc = FO_MOVE; 如果移动的目标目录路径或源目录路径里面带下划线
//能正常移动文件

//CString cmd;

//char   buffer[MAX_PATH];

//_getcwd(buffer, MAX_PATH);

//cmd.Format("COPY %s %s ", "C:\\Users\\jack\\Desktop\\copy_from\\*.jpg", buffer);

//system(cmd);

//不可用 system仅仅支持文件对文件的拷贝

//system("COPY C:\\Users\\jack\\Desktop\\copyfrom\\*.jpg ./");//不可用,不能使用文件拷贝到目录

//不可用 system仅仅支持文件对文件的拷贝

system(

"COPY

C:\\Users\\jack\\Desktop\\copyfrom\\1345233921.jpg

C:\\Users\\jack\\Desktop\\copyfrom\\xxxxxxxxxxxxxxxxxxxx.jpg");

//可用 system支持文件对文件的拷贝

system("COPY

C:\\Users\\jack\\Desktop\\copy_from\\1345233921.jpg

C:\\Users\\jack\\Desktop\\copy_from\\xxxxxxxxxxxxxxxxxxxx.jpg");

//可用 支持带下划线的目录拷贝

bool bFailIfExists=false;

CopyFile(

"C:\\Users\\jack\\Desktop\\copyfrom\\1345233921.jpg",

"C:\\Users\\jack\\Desktop\\copyfrom\\xxxxxxxxxxxxxxxxxxxx.jpg", bFailIfExists);

//可用 CopyFile只针对文件对文件的处理,不支持批量导入

CopyFile("C:\\Users\\jack\\Desktop\\copyfrom\\1345233921.jpg", "./xxxxxxxxxxxx.jpg", bFailIfExists);

//可用  CopyFile只针对文件对文件的处理,支持当前目录 不支持批量导入

bool bFailIfExists=false;

CopyFile("C:\\Users\\jack\\Desktop\\copy_from\\1345233921.jpg", "C:\\Users\\jack\\Desktop\\copy_from\\xxxxxxxxxxxxxxxxxxxx.jpg", bFailIfExists);

//可用 支持带下划线的目录拷贝

//CopyFile("C:\\Users\\jack\\Desktop\\copyfrom\\1345233921.jpg", "./", bFailIfExists);

//不可用 不支持文件对目录

//CopyFile("C:\\Users\\jack\\Desktop\\copyfrom\\*.jpg", "./xxxxxxxxxxxx.jpg", bFailIfExists);

//不可用 不支持批量处理

}

时间: 2024-10-07 05:02:19

vc关于文件拷贝的相关文章

VC中文件(夹)目录与路径操作原理与代码实现

***********************************************声明************************************************************************************* 原创作品,出自 "晓风残月xj" 博客,欢迎转载,转载时请务必注明出处(http://blog.csdn.net/xiaofengcanyuexj). 由于各种原因,可能存在诸多不足,欢迎斧正! ************

文件操作ofstream,open,close,ifstream,fin,按照行来读取数据, fstream,iosin iosout,fio.seekg(),文件写入和文件读写,文件拷贝和文件

 1.ofstream,open,close 写入文件 #include<iostream> #include<fstream> using namespace std; //通过ofstream的方式实现写入文件 open,close void main() { ofstream fout;  //ofstream输出文件 fout.open("E:\\1.txt");//打开文件 fout << "1234abcdef";

【Java】利用文件输入输出流完成把一个文件夹内的所有文件拷贝的另一的文件夹的操作

一.基本目标 使用Java完成如下的操作: 把一个文件夹内的所有文件拷贝的另一的文件夹,例如,在F盘中有a与b两个文件夹: f:/a里面有一堆文件,运行Java程序之后就会全部复制到f:/b,并且完成重命名,在所有文件之前加rename_的前缀,如果里面有文件夹,则文件夹不重命名,里面的文件进行重命名,同样在所有文件之前加rename_的前缀: 二.制作过程 1.首先主函数非常简单,就是调用了上面FileTest类中的copyFolder函数 public class FileCopy { pu

使用IO流实现对特殊文件及文件夹中文件拷贝到指定文件中

本程序可以实现将自己指定的文件类型的文件拷贝到自己想放的文件中,比如一个文件夹中有很多文件,那么我们想把所有的TXT文件拷贝到自己指定的文件中.(靠背笔记) package com.blueZhang; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundExcept

apk安装时把程序附带文件拷贝到手机指定目录下

项目已搞定,今天把.apk文件弄到另外一台非调试手机上用,发现一个问题.因为要画图,所以绘图的点的数据保存在一个.txt的文本文件中,上次直接把它用usb传到指定文件夹下的,但是明显不科学,因为用户下载了你的.apk文件,你却告诉他,还要把这个文本文件拷贝到指定的文件夹下,所以,我就要解决这个问题,就是把文本文件打包在apk文件中,安装.apk时就让创建一个程序文件夹,然后把文本文件拷贝到这个目录文件夹里,用户运行程序,就可以绘图,不用再让他拷贝一份绘图的点的坐标的数据.同理,其实我这里还有设计

文件操作ofstream,open,close,ifstream,fin,依照行来读取数据, fstream,iosin iosout,fio.seekg(),文件写入和文件读写,文件拷贝和文件

 1.ofstream,open,close 写入文件 #include<iostream> #include<fstream> using namespace std; //通过ofstream的方式实现写入文件 open,close void main() { ofstream fout;  //ofstream输出文件 fout.open("E:\\1.txt");//打开文件 fout << "1234abcdef";

Bash Shell 递归实现目录中文件拷贝

前言 今天工作中遇到了一个问题,如果将目录A中的文件拷贝到目录B中(前提目录B没有该文件),并保持文件在目录A的结构.项目重点如下: 需要在目录B中保持文件在目录A中的结构.假设A目录文件 A/test/1.txt,转移到目录B中应该是B/test/1.txt.同时还需要考虑目录B中是否存在test目录,多级目录就要考虑递归了.(还好,bash shell里写个目录递归遍历还是比较简单的.) 需要考虑A中文件是否在B中已经存在同名文件,如果存在,则不需要拷贝. 项目需求示例图如下: 实现 项目需

C# IO操作(四)大文件拷贝(文件流的使用)、文件编码

     大文件拷贝(文件流的使用).文件编码 首先说一下大文件拷贝和文件流,因为计算机的内存资源是有限的,面对几个G甚至更大的文件,需要通过程序来完成拷贝,就需要用到文件流(因为我们无法做到把文件一次性加载到内存中:事实上,内存也不允许这么干),所以在C#中出现了内存流这个东西.先看下面的内容,File类中的常用读取文件方法会将文件内容一次性全部加载到内存中: 1 string sPath = @"C:\Users\Chens-PC\Desktop\Nginx.txt"; 2 //F

在VC资源文件中加入声音资源

本文介绍如何在VC资源文件中加入自己的声音资源,使自己的应用程序可以播放声音. 1.首先用文本编辑器(如记事本)打开资源文件(.rc文件) 在最后加入自己的声音资源,如下IDW WAVE "c:\\kav\\sound\\virus.wav" 保存资源文件.  2.在应用程序中要播放声音的地方启动另一线程,用来播放声音:AfxBeginThread((AFX_THREADPROC)sound,NULL,THREAD_PRIORITY_NORMAL); 3.添加线程回调函数 这里介绍加载