文件的复制操作也是文件处理过程中常用的操作,文件复制比较简单,File类中提供了很多方法,这里只实例演示File.Copy()的用法,其代码如下:
string pLocalFilePath ="";//要复制的文件路径
string pSaveFilePath ="";//指定存储的路径
if (File.Exists(pLocalFilePath))//必须判断要复制的文件是否存在
{
File.Copy(pLocalFilePath, pSaveFilePath, true);//三个参数分别是源文件路径,存储路径,若存储路径有相同文件是否替换
}
复制文件夹中的所有文件到指定目录,只需循环遍历文件夹中的所有文件即可,不过需要考虑文件夹中有下层文件夹的情况,其示例代码如下:
/// <summary>
/// 复制文件夹中的所有内容
/// </summary>
/// <param name="sourceDirPath">源文件夹目录</param>
/// <param name="saveDirPath">指定文件夹目录</param>
public void CopyDirectory(string sourceDirPath, string saveDirPath)
{
try
{
if (!Directory.Exists(saveDirPath))
{
Directory.CreateDirectory(saveDirPath);
}
string[] files = Directory.GetFiles(sourceDirPath);
foreach (string file in files)
{
string pFilePath = saveDirPath + "\\" + Path.GetFileName(file);
if (File.Exists(pFilePath))
continue;
File.Copy(file, pFilePath, true);
}
string[] dirs = Directory.GetDirectories(sourceDirPath);
foreach (string dir in dirs)
{
CopyDirectory(dir, saveDirPath + "\\" + Path.GetFileName(dir));
}
}
catch (Exception ex)
{
}
}
上述实例代码均经过验证