C#复制所选目录下所有文件夹和文件

代码如下:

using System;
using System.Collections.Generic;
using
System.ComponentModel;
using System.Data;
using System.Drawing;
using
System.Linq;
using System.Text;
using System.Windows.Forms;
using
System.IO;

namespace PractiseCCode
{
    public
partial class FrmFolder : Form
   
{
        public
FrmFolder()
       
{
           
InitializeComponent();
       
}

        private void
button2_Click(object sender, EventArgs
e)
       
{
           
//复制所选目录下所有文件夹和文件
           
string path =
this.textBox1.Text.Trim();
           
string
newpath=this.textBox2.Text.Trim();
           
copydirectory(path,
newpath);
           
MessageBox.Show("ok!");

       
}
        private static void
copydirectory(string oldpath, string
newpath)
       
{
           
DirectoryInfo olddir = new
DirectoryInfo(oldpath);
           
DirectoryInfo newdir = new
DirectoryInfo(newpath);
           
if (!olddir.Exists)

           
{
               
MessageBox.Show("选择路径不能为空!");
           
}
            if
(!newdir.Exists)
           
{
//若目标路径没有文件夹,就新建一个
               
Directory.CreateDirectory(newpath);

           
}
           
FileInfo[] files = olddir.GetFiles();
//找出目录下所有文件
           
foreach (FileInfo fi in
files)
           
{
               
File.Copy(fi.FullName, newpath + "\\" +
fi.Name,true);
           
}
           
DirectoryInfo[] dirs = olddir.GetDirectories();
//找出目录下的所有文件夹
           
foreach ( DirectoryInfo di in
dirs)
           
{
               
copydirectory(di.FullName, newpath +"\\"+
di.Name);
           
}
      
 
       
}

        private void
button1_Click(object sender, EventArgs
e)
       
{
           
FolderBrowserDialog fbdlog = new
FolderBrowserDialog();
           
DialogResult dr =
fbdlog.ShowDialog();
           
if (dr ==
DialogResult.OK)
           
{
               
textBox1.Text =
fbdlog.SelectedPath;
           
}
       
}
        
   
}
}

时间: 2024-10-04 07:10:45

C#复制所选目录下所有文件夹和文件的相关文章

遍历指定文件夹下的所有图片,并复制到指定目录下

import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; import java.util.ArrayList; import java.util.List; import javax.imageio.ImageIO; public class Copy { /** * 遍历文件夹下的所有图片文件,并复制到指定文件夹下 */ static String srcfile = "E:/I

编写一个程序,将 d: \ java 目录下的所有.java 文件复制到d: \ jad 目录下,并 将原来文件的扩展名从.java 改为.jad

1.编写一个程序,将 d: \ java 目录下的所有.java 文件复制到d: \ jad 目录下,并 将原来文件的扩展名从.java 改为.jad package copy; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; i

Python - 创建目录,切换目录,创建文件,复制文件,移动文件 ,删除文件夹及文件

# -*- coding: utf-8 -*- """ Created on Mon Jan  9 00:35:43 2017 @author-Weixin: 953558077 """ import os import shutil import time ''' shutil模块的基础功能简介 copyfile( src, dst)      从源src复制到dst中去.当然前提是目标地址是具备可写权限.抛出的异常信息为IOException

JAVA之IO技术-获取指定目录下的文件夹和文件的File对象或是字符串名称。

package ioTest.io3; /* * 获取指定目录下的文件夹和文件的File对象或是字符串名称. * 也可以通过filter获取指定的文件夹或者指定类型的文件 * 这里面需要做一个总结,如何利用jdk的源码去理解不熟悉的方法的应用. */ import java.io.File; import java.io.FileFilter; import java.io.FilenameFilter; public class FileDemo2 { public static void m

JAVA之File类 获取一个目录下的所有文件夹和文件,包括子文件夹和子文件

package ioTest.io3; import java.io.File; /* * 获取一个目录下的所有文件夹和文件,包括子文件夹和子文件 . * 并将文件夹和文件名称打印在控制台上面.并且要显示文件目录的层级 * 注:运用了递归的算法. */ public class FileDemo3 { public static void main(String[] args) { File dir=new File("F:\\黑马学习日程\\"); //File dir=new Fi

解决Linux下Tomcat日志目录下的catalina.log日志文件过大的问题

本文摘自:(http://blog.csdn.net/stevencn76/article/details/6246162) 分类: Java技术专区2011-03-13 12:25 5017人阅读 评论(1) 收藏 举报 tomcatlinux工具任务web 由于Tomcat在默认情况下会将没有经过配置的web应用所产生的日志输出已经其本身的日志内容都输出到这个文件中,那么随着时间的推移,这个文件的尺寸将会越来越大,当需要检查日志内容时间会导致文件难以打开,而且同时tomcat依旧在不断的向文

Linux Shell编程实战---计算特定目录下前10个大文件

计算特定目录下前10个大文件 在给定的目录下,想知道有哪些大文件存在,取前十个,按文件大小排行 (1).使用awk来实现 #!/bin/bash path=/root/shell find $path-type f | awk '{ var=$0 "ls -l "var |getline var1 split(var1,a," ") filename=a[9] filesize=a[5] printf("%s %s\n",filename,fil

删除指定目录下的指定后缀的文件

1 import java.io.*; 2 import javax.swing.*; 3 public class Delete{ 4 public static void main(String[] args)throws Exception{ 5 String target = JOptionPane.showInputDialog(null,"请输入您要清理垃圾的目录:"); 6 File[] fs = new File(target).listFiles(new Filena

DOS下删除整个目录及下属所有文件夹及文件最好用的命令

[转] DOS下删除整个目录及下属所有文件夹及文件最好用的命令 Windows XP以上的版本,在使用DOS命令模式下删除目录(目录就是档案总管中所谓的资料夹)不是用 deltree,而是用 rmdir 指令. 在Windows XP.2000.NT下都可用rmdir指令删除整个目录,好比说我要删除 test 这个目录下的所有目录和档案,这语法就是: rmdir /s/q test 其中: /s 是代表删除所有子目录跟其中的档案. /q 是不要它在删除档案或目录时,不再问我 Yes or No