08实现文件和文件夹的复制

author author     2022-08-19     146

关键词:

        private void btnSave_Click(object sender, EventArgs e) //文件复制、保存方法
        {
            #region  静态复制文件(写死)
            string desPath = @"c:11.chm";
            if (File.Exists(desPath))
            {
                //目标文件已存在
                if (MessageBox.Show(("文件已存在,是否覆盖"), "询问", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
                == DialogResult.Yes)    //选择Yes 确定覆盖
                {
                    //复制文件
                    File.Copy(@"c:lsw3.chm", desPath, true);
                    MessageBox.Show("覆盖成功");
                }
            }
            else //文件不存在
            {
                //开始复制
                File.Copy(@"c:lsw3.chm", desPath, true);
                MessageBox.Show("复制成功");
            }
            


            //显示打开对话框,返回值为dialogResult类型,如果是OK,则用户点击的为打开,否则为取消
            openFileDialog1.InitialDirectory=(@"c:1"); //选择文件时的默认位置
            //openfilediaglog1.filter中的fileter是过滤器的作用
            //showdialog()显示对话框的方法.
            openFileDialog1.Filter = "可执行程序|*.exe|TXT文本|*.txt|图片文件|*.jpg|所有文件|*.*";//可保存类型

            if (openFileDialog1.ShowDialog() == DialogResult.OK)//点击了打开
            {
                if (saveFileDialog1.ShowDialog() == DialogResult.OK) //说明点yes 也就是确认保存
                {
                    File.Copy(openFileDialog1.FileName, saveFileDialog1.FileName, true);
                    MessageBox.Show("保存完成");
                }
            }
#endregion
        }
        //File类是对文件操作的,包括复制、保存、创建时间、修改时间等等等等。
        //Directory功能类似file
        #region 动态
        private void btnCopyContents_Click(object sender, EventArgs e)
        {
            string oldDir, newDir;  //分别是原文件夹和目标文件夹
            FolderBrowserDialog sourceFolder = new FolderBrowserDialog();//动态生成了folderbrowserdialog这个控件 不需要拖控件

            sourceFolder.Description = "请选择要复制的文件夹";//显示了一个简单说明

            if(sourceFolder.ShowDialog()==DialogResult.OK)//点了确定
            {
                oldDir = sourceFolder.SelectedPath;

                sourceFolder.Description = "请选择要复制到的文件夹";//修改了一下sourcefolder的说明文字 便于使用者使用

                if (sourceFolder.ShowDialog()== DialogResult.OK)  //如果确定 那么执行下面代码块代码
                {
                    newDir = sourceFolder.SelectedPath;

                    //获取当前要复制的文件夹中的所有文件(注意!不包含下级文件夹及其中的文件)
                    string[] files = Directory.GetFiles(oldDir);//定义了个字符数组来接收源文件内需要复制的文件
                    foreach (string filepath in files) //也可以用for语句
                    {
                        //File.Copy(filepath,newDir+"\"+filepath.Substring(filepath.LastIndexOf("\")+1),true);
                   //拆分了一下,更为简洁
                        string nFileName ; //定义一个string类型,来获取文件名
                        nFileName = filepath.Substring(filepath.LastIndexOf("\") + 1); //获取要复制的文件夹里的文件名

                        File.Copy(filepath, newDir + "\" + nFileName, true);   //最后得出要复制的文件夹以及文件夹里的文件名并进行复制
                    }
                    //MessageBox.Show("复制完成");
                }
                //MessageBox.Show(sourceFolder.SelectedPath);

            }
        }

        #endregion

 

复制文件的问题:使用fileinputstream和fileoutputstream实现文件复制

publicclassTest{publicstaticvoidmain(String[]args){Testt=newTest();t.upload();}publicvoidupload(){Scannersc=newScanner(System.in);System.out.println("路径");Stringstr=sc.next();Filef=newFile(str);  查看详情

nodejs实现文件的拷贝复制

varfs=require(‘fs‘),stat=fs.stat;/*05*复制目录中的所有文件包括子目录06*@param{String}需要复制的目录07*@param{String}复制到指定的目录08*/varcopy=function(src,dst){//读取目录中的所有文件/目录fs.readdir(src,function(err,paths){if(err){throwerr;} 查看详情

virtualbox的虚拟机(ubuntu)和windows系统之间实现复制粘贴和共享文件夹

文章目录共享复制粘贴文本共享复制粘贴文件夹共享复制粘贴文本1.VirtualBox设置-常规-高级,将共享粘贴板和拖放设置为双向。2.启动Ubuntu,设备-安装增强功能,3.重启(reboot)Ubuntu,即可实现windows和ubantu之间共享复制粘... 查看详情

使用 devc++ 和 c++ 语言复制文件和目录

...建目录c:/\'程序文件\'/blablabla使用C++?我还想复制blablabla文件夹中的一些文件。比如test.exe,如何用c++语言实现呢?另外,如何在桌面创建快捷方式以连接blabla文件夹中的test 查看详情

利用字节流或字符流实现文件夹整体的复制

思路:1、获取所有的文件夹和子文件的名称然后遍历2、判断是否是文件夹,是的话进行复制  eg:对D盘mp3文件夹内的所有文件进行复制,复制到F盘MP3文件夹。    (1)、判断F盘下是否有mp3文件夹,没有的话进行创建。... 查看详情

利用字节流和字节数组流是实现文件的复制

packageioxuexi;importjava.io.BufferedInputStream;importjava.io.BufferedOutputStream;importjava.io.ByteArrayInputStream;importjava.io.ByteArrayOutputStream;importjava.io.File;importjava.io.FileInputStr 查看详情

大数据讲课笔记4.3hdfs的shell操作(代码片段)

...志存放目录和待上传文件3、设置日志文件上传的路径4、实现文件上传5、执行程序展示运行结果三、归纳总结四、上机操作零、 查看详情

大数据讲课笔记4.3hdfs的shell操作(代码片段)

...志存放目录和待上传文件3、设置日志文件上传的路径4、实现文件上传5、执行程序展示运行结果三、归纳总结四、上机操作零、 查看详情

java实现文件复制的不同方法(代码片段)

 用不同的方法实现文件的复制1.通道Channel,它是一个对象,可以通过它读取和写入数据。拿NIO与原来的I/O比较,通道就像是流。是对接操作系统底层和缓冲区的桥梁。2.性能比较内存映射最快,其次是NIO读写文件,再其次是加... 查看详情

Xcode 构建后复制文件操作

】Xcode构建后复制文件操作【英文标题】:XcodePostBuildCopyFileActions【发布时间】:2009-08-2523:08:48【问题描述】:在Xcode中,我如何调用“shell脚本”,它是一个将.app和.dsym文件复制到不同目录的Perl脚本?我想将项目的名称和/或项... 查看详情

将具有特定(相同)名称的子文件夹复制到目标

】将具有特定(相同)名称的子文件夹复制到目标【英文标题】:Copysubfolderswithspecific(same)nametodestination【发布时间】:2020-09-2307:29:08【问题描述】:围绕以下问题思考-也试图说明我试图实现的目标。源包含名为“import”的子文... 查看详情

管道字符串与变量中的文件夹到 findstr - 复制和重命名文件

】管道字符串与变量中的文件夹到findstr-复制和重命名文件【英文标题】:Pipingstringwithfoldersinvariabletofindstr-copyandrenamefiles【发布时间】:2020-08-2308:27:08【问题描述】:我正在尝试将包含文件夹路径的字符串通过管道传输到findstr... 查看详情

如何根据子文件夹复制文件和重命名

】如何根据子文件夹复制文件和重命名【英文标题】:Howtocopyfileandrenamedependingonsubfolder【发布时间】:2017-08-0411:18:29【问题描述】:我正在尝试在gradle中复制一个文件并同时重命名它,其中文件的新名称应该取决于它所在的子文... 查看详情

linux下c语言实现多线程文件复制(代码片段)

转自:https://www.cnblogs.com/zxl0715/articles/5365989.html1、具体思路把一个文件分成N份,分别用N个线程copy,每个线程只读取指定长度字节大小的内容最后一个线程的源文件所指定的结束位置是文件的实际大小每个线程读取指定源文件部... 查看详情

rsync基础(代码片段)

...件:rsync version3.1.2 protocolversion31 前言rsync可以实现scp的部分远程复制功能(支持本地到远程复制和远程到本地复制,但是不支持远程到远程复制;scp可以支持远程到远程复制)、cp的本地复制功能、rm的删除功能和“ls... 查看详情

SBT 任务将属性文件从项目文件夹复制到 webapp

】SBT任务将属性文件从项目文件夹复制到webapp【英文标题】:SBTtasktocopypropertyfilefromprojectfoldertowebapp【发布时间】:2012-08-2516:41:42【问题描述】:我是scala和Sbt的新手。我正在尝试使用JQueryi18n插件实现国际化。我的项目文件夹结... 查看详情

java文件复制-字符流(代码片段)

...章讲了使用字节流复制,这一篇主要解释字符流复制文件。最后有字节流和字符流的区别。字符流的体系抽象顶层父类:Reader(读取)和Writer(写入)字符流具体子类:FileReader和FileWriterReader的常用方 查看详情

如何实现虚拟机与主机之间的文件共享,复制

...点击虚拟机界面的vmwaretools,安装好这个插件之后,就能够实现主机和虚拟机之间的文件互通。可以在主机和虚拟机之间使用文件复制剪切和粘贴。具体过程有疑问,可以问度娘。 参考技术B开启网络桥接,将主机和虚拟机网卡连... 查看详情