C# DirectoryInfo.Delete的代码示例

通过代码示例来学习C# DirectoryInfo.Delete方法

通过代码示例来学习编程是非常高效的。
1. 代码示例提供了一个具体而直观的学习环境,使初学者能够立即看到编程概念和语法的实际应用。
2. 通过分析和模仿现有的代码实例,初学者可以更好地理解编程逻辑和算法的工作原理。
3. 代码实例往往涵盖了多种编程技巧和最佳实践,通过学习和模仿这些实例,学习者可以逐步掌握如何编写高效、可读性强和可维护的代码。这对于初学者来说,是一种快速提升编程水平的有效途径。


DirectoryInfo.Delete是C#的System.IO命名空间下中的一个方法, 小编为大家找了一些网络大拿们常见的代码示例,源码中的DirectoryInfo.Delete() 已经帮大家高亮显示了,大家可以重点学习DirectoryInfo.Delete() 方法的写法,从而快速掌握该方法的应用。

DirectoryInfo.Delete的代码示例1 - NewFolderAttributesAreUpdated()

    using System.IO;

        [TestCaseSource(typeof(FileRunnersAndFolders), nameof(FileRunnersAndFolders.Folders))]
        public void NewFolderAttributesAreUpdated(string parentFolder)
        {
            string folderName = Path.Combine(parentFolder, "FolderAttributesAreUpdated");
            string virtualFolder = this.Enlistment.GetVirtualPathTo(folderName);
            Directory.CreateDirectory(virtualFolder);

            FileSystemRunner fileSystem = FileSystemRunner.DefaultRunner;

            virtualFolder.ShouldBeADirectory(fileSystem);

            // Update defaults. DirectoryInfo is not batched, so each of these will create a separate Open-Update-Close set.
            DirectoryInfo before = new DirectoryInfo(virtualFolder);
            DateTime testValue = DateTime.Now + TimeSpan.FromDays(1);
            before.CreationTime = testValue;
            before.LastAccessTime = testValue;
            before.LastWriteTime = testValue;
            before.Attributes = FileAttributes.Hidden;

            // DirectoryInfo caches information. We can refresh, but just to be absolutely sure...
            virtualFolder.ShouldBeADirectory(fileSystem)
                .WithInfo(testValue, testValue, testValue, FileAttributes.Hidden | FileAttributes.Directory, ignoreRecallAttributes: false);

            Directory.Delete(virtualFolder);
        }
    

开发者ID:microsoft,项目名称:VFSForGit,代码行数:27,代码来源:BasicFileSystemTests.cs

在NewFolderAttributesAreUpdated()方法中,DirectoryInfo的代码示例类中的Delete的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞

DirectoryInfo.Delete的代码示例2 - UninstallService()

    using System.IO;

        public static void UninstallService()
        {
            StopService();

            RunScCommand("delete", TestServiceName);

            // Make sure to delete any test service data state
            string serviceData = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData), "GVFS", TestServiceName);
            DirectoryInfo serviceDataDir = new DirectoryInfo(serviceData);
            if (serviceDataDir.Exists)
            {
                serviceDataDir.Delete(true);
            }
        }
    

开发者ID:microsoft,项目名称:VFSForGit,代码行数:16,代码来源:GVFSServiceProcess.cs

在UninstallService()方法中,DirectoryInfo的代码示例类中的Delete的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞

DirectoryInfo.Delete的代码示例3 - TearDownJunctionRoot()

    using System.IO;

        [TearDown]
        public void TearDownJunctionRoot()
        {
            DirectoryInfo junctionsRootInfo = new DirectoryInfo(this.junctionsRoot);
            if (junctionsRootInfo.Exists)
            {
                foreach (DirectoryInfo junction in junctionsRootInfo.GetDirectories())
                {
                    junction.Delete();
                }

                junctionsRootInfo.Delete();
            }
        }
    

开发者ID:microsoft,项目名称:VFSForGit,代码行数:16,代码来源:JunctionAndSubstTests.cs

在TearDownJunctionRoot()方法中,DirectoryInfo的代码示例类中的Delete的代码示例方法一共出现了2次, 见黄色背景高亮显示的地方,欢迎大家点赞

DirectoryInfo.Delete的代码示例4 - DeleteDirectory()

    using System.IO;

        public virtual void DeleteDirectory(string path, bool recursive = true, bool ignoreDirectoryDeleteExceptions = false)
        {
            if (!Directory.Exists(path))
            {
                return;
            }

            DirectoryInfo directory = new DirectoryInfo(path);

            if (recursive)
            {
                foreach (FileInfo file in directory.GetFiles())
                {
                    file.Attributes = FileAttributes.Normal;
                    file.Delete();
                }

                foreach (DirectoryInfo subDirectory in directory.GetDirectories())
                {
                    this.DeleteDirectory(subDirectory.FullName, recursive, ignoreDirectoryDeleteExceptions);
                }
            }

            try
            {
                directory.Delete();
            }
            catch (Exception)
            {
                if (!ignoreDirectoryDeleteExceptions)
                {
                    throw;
                }
            }
        }
    

开发者ID:microsoft,项目名称:VFSForGit,代码行数:37,代码来源:PhysicalFileSystem.cs

在DeleteDirectory()方法中,DirectoryInfo的代码示例类中的Delete的代码示例方法一共出现了2次, 见黄色背景高亮显示的地方,欢迎大家点赞

DirectoryInfo.Delete的代码示例5 - DeleteDirectory()

    using System.IO;

        public override string DeleteDirectory(string path)
        {
            DirectoryInfo directory = new DirectoryInfo(path);

            foreach (FileInfo file in directory.GetFiles())
            {
                file.Attributes = FileAttributes.Normal;

                RetryOnException(() => file.Delete());
            }

            foreach (DirectoryInfo subDirectory in directory.GetDirectories())
            {
                this.DeleteDirectory(subDirectory.FullName);
            }

            RetryOnException(() => directory.Delete());
            return string.Empty;
        }
    

开发者ID:microsoft,项目名称:VFSForGit,代码行数:21,代码来源:SystemIORunner.cs

在DeleteDirectory()方法中,DirectoryInfo的代码示例类中的Delete的代码示例方法一共出现了2次, 见黄色背景高亮显示的地方,欢迎大家点赞

DirectoryInfo.Delete的代码示例6 - Install()

    using System.IO;
        static void Install()
        {
            Console.WriteLine("Installing...");
            foreach (string dir in Directory.GetDirectories("master/"))
            {
                SetAccessRule(folderDir);
                SetAccessRule(dir);

                string dirName = new DirectoryInfo(dir).Name;
                string destDir = Path.Combine(folderDir, dirName + @"\");

                //Skip hash directory
                if (dirName.Equals("Hashes", StringComparison.CurrentCultureIgnoreCase))
                    continue;

                if (Directory.Exists(destDir))
                {
                    Directory.Delete(destDir, true);
                }

                if (Directory.Exists(destDir))
                    Directory.Delete(destDir, true);

                Directory.Move(dir, destDir);
            }
            foreach (string file in Directory.GetFiles("master/"))
            {
                if (file.Contains("Updater.exe") || file.Contains("Updater.exe.config")
                    || file.Contains("Updater.pdb") || file.Contains("Octokit.dll"))
                    continue;

                SetAccessRule(file);
                SetAccessRule(folderDir);

                string destFile = Path.Combine(folderDir, Path.GetFileName(file));
                if (File.Exists(destFile))
                    File.Delete(destFile);

                File.Move(file, destFile);
            }
        }
    

开发者ID:KillzXGaming,项目名称:Switch-Toolbox,代码行数:42,代码来源:Program.cs

在Install()方法中,DirectoryInfo的代码示例类中的Delete的代码示例方法一共出现了3次, 见黄色背景高亮显示的地方,欢迎大家点赞

DirectoryInfo.Delete的代码示例7 - CleanupFolder()

    using System.IO;

        private static void CleanupFolder(string folderPath, string fileNamePattern, int keepFileCount)
        {
            if (Directory.Exists(folderPath))
            {
                DirectoryInfo directoryInfo = new DirectoryInfo(folderPath);

                IEnumerable files = directoryInfo.GetFiles(fileNamePattern).
                    OrderByDescending(f => f.LastWriteTime.Year <= 1601 ? f.CreationTime : f.LastWriteTime).Skip(keepFileCount);

                foreach (FileInfo file in files)
                {
                    file.Delete();

                    DebugHelper.WriteLine($"File deleted: {file.FullName}");
                }
            }
        }
    

开发者ID:ShareX,项目名称:ShareX,代码行数:19,代码来源:CleanupManager.cs

在CleanupFolder()方法中,DirectoryInfo的代码示例类中的Delete的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞

DirectoryInfo.Delete的代码示例8 - deleteOutDirectory()

    using System.IO;

    private void deleteOutDirectory (Book book) {
      try {
        DirectoryInfo diParent = Directory.GetParent (book.OutDirectoryLong);
        DirectoryInfo diBook = new DirectoryInfo (book.OutDirectoryLong);
        if (book.PartsType != Book.EParts.some) {
          diBook.Delete (true);
        } else {
          foreach (var part in book.Parts) {
            string dir = TagAndFileNamingHelper.GetPartDirectoryName (Resources, Settings, part);
            if (Directory.Exists (dir)) {
              DirectoryInfo dic = new DirectoryInfo (dir);
              dic.Delete (true);
            }
          }
          int n = diBook.GetDirectories ().Count ();
          if (n == 0)
            diBook.Delete (true);
        }

        if (!Settings.FlatFolders && !(diParent is null)) {
          if (book.IsNewSeries) {
            DirectoryInfo diParentAuthor = diParent.Parent;
            int n = diParent.GetDirectories ().Count ();
            if (n == 0) {
              diParent.Delete (true);
              diParent = diParentAuthor;
            }
          }
          if (book.IsNewAuthor && !(diParent is null)) {
            int n = diParent.GetDirectories ().Count ();
            if (n == 0) {
              diParent.Delete (true);
            }
          }
        }

      } catch (Exception exc) {
        exceptionCallback (exc);
      }
      book.Parts.ForEach ( p => p.AaxFileItem.Converted = false);
    }
    

开发者ID:audiamus,项目名称:AaxAudioConverter,代码行数:43,代码来源:AaxAudioConverter.cs

在deleteOutDirectory()方法中,DirectoryInfo的代码示例类中的Delete的代码示例方法一共出现了5次, 见黄色背景高亮显示的地方,欢迎大家点赞

本文中的DirectoryInfo.Delete方法示例由csref.cn整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。