Network Security Internet Technology Development Database Servers Mobile Phone Android Software Apple Software Computer Software News IT Information

In addition to Weibo, there is also WeChat

Please pay attention

WeChat public account

Shulou

How to implement file Move and Copy operation in C #

2025-01-17 Update From: SLTechnology News&Howtos shulou NAV: SLTechnology News&Howtos > Development >

Share

Shulou(Shulou.com)06/01 Report--

这篇文章主要介绍"C#怎么实现文件Move和Copy操作",在日常操作中,相信很多人在C#怎么实现文件Move和Copy操作问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"C#怎么实现文件Move和Copy操作"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

Move操作代码public static void MoveFolder(string sourcePath, string destPath) { if (Directory.Exists(sourcePath)) { if (!Directory.Exists(destPath)) { //目标目录不存在则创建 try { Directory.CreateDirectory(destPath); } catch (Exception ex) { throw new Exception("创建目标目录失败:" + ex.Message); } } //获得源文件下所有文件 List files = new List(Directory.GetFiles(sourcePath)); files.ForEach(c => { string destFile = Path.Combine(new string[] { destPath, Path.GetFileName(c) }); //覆盖模式 if (File.Exists(destFile)) { File.Delete(destFile); } File.Move(c, destFile); }); //获得源文件下所有目录文件 List folders = new List(Directory.GetDirectories(sourcePath)); folders.ForEach(c => { string destDir = Path.Combine(new string[] { destPath, Path.GetFileName(c) }); //Directory.Move必须要在同一个根目录下移动才有效,不能在不同卷中移动。 //Directory.Move(c, destDir); //采用递归的方法实现 MoveFolder(c, destDir); }); } else {} }Copy操作代码public static void CopyFilefolder(string sourceFilePath, string targetFilePath) { //获取源文件夹中的所有非目录文件 string[] files = Directory.GetFiles(sourceFilePath); string fileName; string destFile; //如果目标文件夹不存在,则新建目标文件夹 if (!Directory.Exists(targetFilePath)) { Directory.CreateDirectory(targetFilePath); } //将获取到的文件一个一个拷贝到目标文件夹中 foreach (string s in files) { fileName = Path.GetFileName(s); destFile = Path.Combine(targetFilePath, fileName); File.Copy(s, destFile, true); } //上面一段在MSDN上可以看到源码 //获取并存储源文件夹中的文件夹名 string[] filefolders = Directory.GetFiles(sourceFilePath); //创建Directoryinfo实例 DirectoryInfo dirinfo = new DirectoryInfo(sourceFilePath); //获取得源文件夹下的所有子文件夹名 DirectoryInfo[] subFileFolder = dirinfo.GetDirectories(); for (int j = 0; j < subFileFolder.Length; j++) { //获取所有子文件夹名 string subSourcePath = sourceFilePath + "\\" + subFileFolder[j].ToString(); string subTargetPath = targetFilePath + "\\" + subFileFolder[j].ToString(); //把得到的子文件夹当成新的源文件夹,递归调用CopyFilefolder CopyFilefolder(subSourcePath, subTargetPath); } }到此,关于"C#怎么实现文件Move和Copy操作"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!

Welcome to subscribe "Shulou Technology Information " to get latest news, interesting things and hot topics in the IT industry, and controls the hottest and latest Internet news, technology news and IT industry trends.

Views: 0

*The comments in the above article only represent the author's personal views and do not represent the views and positions of this website. If you have more insights, please feel free to contribute and share.

Share To

Development

Wechat

© 2024 shulou.com SLNews company. All rights reserved.

12
Report