• 欢迎访问开心洋葱网站,在线教程,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站,欢迎加入开心洋葱 QQ群
  • 为方便开心洋葱网用户,开心洋葱官网已经开启复制功能!
  • 欢迎访问开心洋葱网站,手机也能访问哦~欢迎加入开心洋葱多维思维学习平台 QQ群
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏开心洋葱吧~~~~~~~~~~~~~!
  • 由于近期流量激增,小站的ECS没能经的起亲们的访问,本站依然没有盈利,如果各位看如果觉着文字不错,还请看官给小站打个赏~~~~~~~~~~~~~!

C#安全删除文件目录的代码

OC/C/C++ 水墨上仙 1785次浏览

C#安全删除文件目录的代码
1. 创建文件夹 (简单,没多考虑)
2. 删除所建文件夹:为防止删除过程中有其他进程引用该文件夹中文件,增加了对此意外情况的考虑。 在本例中,若删除过程中被其他进程引用,等待并循环5次尝试再次删除操作。长时间无法被删除,则删除文件目录失败

using System;
using System.IO;
namespace Retry
{
    class Program
    {
        static void Main(string[] args)
        {
            DirectoryInfo dirInfo = Directory.CreateDirectory(@"C:\TestDir");
            string folderName = System.Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "\\TestDir";
            if (!Directory.Exists(folderName))
            {
                Directory.CreateDirectory(folderName);
                Console.WriteLine("{0} created! ",folderName);
            }
            int retryTimes = 1;
            do
            {
                if (Directory.Exists(folderName))
                {
                    try
                    {
                        Console.WriteLine("Tring to delete file the {0} time.",retryTimes);
                        Directory.Delete(folderName, true);
                        Console.WriteLine("Deleting file successfully.");
                        break;
                    }
                    catch (IOException ex)
                    {
                        Console.WriteLine("Exception! ", ex.ToString());
                        Console.WriteLine("Sleep 5 seconds and retry.");
                        System.Threading.Thread.Sleep(5000);
                        retryTimes++;
                    }
                }
                else
                {
                    Console.WriteLine("Delete folder successfully");
                    break;
                }
            } while (retryTimes <= 5);
            if (Directory.Exists(folderName))
                Console.WriteLine("Deleting folder failed.");
           
            Console.WriteLine("Done");
            Console.ReadKey();
        }
    }
}


开心洋葱 , 版权所有丨如未注明 , 均为原创丨未经授权请勿修改 , 转载请注明C#安全删除文件目录的代码
喜欢 (0)
加载中……