c# 读取所有子文件夹中扩展名为txt的所有文件,并将其复制到根目录,删除源文件。

 我来答
这害人的
2012-08-17 · TA获得超过358个赞
知道小有建树答主
回答量:255
采纳率:0%
帮助的人:136万
展开全部
/// <summary>
/// 处理指定工作方式,只工作指定文件类型
/// </summary>
/// <param name="workWhat">[工作方式]目前支持 复制 剪切 删除</param>
/// <param name="fromDir">[来自]</param>
/// <param name="toDir">[到]</param>
/// <param name="extension">工作文件扩展名</param>
public void copyDir(string workWhat, string fromDir, string toDir, string extension)
{
string[] files = Directory.GetFiles(@fromDir);
foreach (string file in files)
{
FileInfo fiE = new FileInfo(@file);
//loading文本说明 赋值
if (workWhat == "复制")
{
if (fiE.Extension == extension)
{
File.Copy(@file, @toDir + "\\" + Path.GetFileName(@file), true);
}
}
else if(workWhat == "剪切")
{
if (fiE.Extension == extension)
{
File.Move(@file, @toDir + "\\" + Path.GetFileName(@file));
}
}
else if(workWhat=="删除")
{
if (fiE.Extension == extension)
{
File.Delete(@file);
}
}
}
//子目录处理
string[] dirs = Directory.GetDirectories(@fromDir);
foreach (string dir in dirs)
{
if (!Directory.Exists(@toDir + "\\" + Path.GetFileName(@dir)))
{
Directory.CreateDirectory(@toDir + "\\" + Path.GetFileName(@dir));
}
copyDir(@dir, @toDir + "\\" + Path.GetFileName(@dir));
}
}

//使用
copyDir("复制", @"D:\", @"E:\receive" , ".txt");
//copyDir("剪切", @"D:\", @"E:\receive" , ".txt");
//copyDir("删除", @"D:\", string.Empty, ".txt");
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式