C# FileInfo.Delete的代码示例
通过代码示例来学习C# FileInfo.Delete方法
通过代码示例来学习编程是非常高效的。
1. 代码示例提供了一个具体而直观的学习环境,使初学者能够立即看到编程概念和语法的实际应用。
2. 通过分析和模仿现有的代码实例,初学者可以更好地理解编程逻辑和算法的工作原理。
3. 代码实例往往涵盖了多种编程技巧和最佳实践,通过学习和模仿这些实例,学习者可以逐步掌握如何编写高效、可读性强和可维护的代码。这对于初学者来说,是一种快速提升编程水平的有效途径。
FileInfo.Delete是C#的System.IO命名空间下中的一个方法, 小编为大家找了一些网络大拿们常见的代码示例,源码中的FileInfo.Delete() 已经帮大家高亮显示了,大家可以重点学习FileInfo.Delete() 方法的写法,从而快速掌握该方法的应用。
FileInfo.Delete的代码示例1 - NewFileAttributesAreUpdated()
using System.IO; [TestCaseSource(typeof(FileRunnersAndFolders), nameof(FileRunnersAndFolders.Folders))] public void NewFileAttributesAreUpdated(string parentFolder) { string filename = Path.Combine(parentFolder, "FileAttributesAreUpdated"); FileSystemRunner fileSystem = FileSystemRunner.DefaultRunner; string virtualFile = this.Enlistment.GetVirtualPathTo(filename); virtualFile.ShouldNotExistOnDisk(fileSystem); File.Create(virtualFile).Dispose(); virtualFile.ShouldBeAFile(fileSystem); // Update defaults. FileInfo is not batched, so each of these will create a separate Open-Update-Close set. FileInfo before = new FileInfo(virtualFile); DateTime testValue = DateTime.Now + TimeSpan.FromDays(1); before.CreationTime = testValue; before.LastAccessTime = testValue; before.LastWriteTime = testValue; before.Attributes = FileAttributes.Hidden; // FileInfo caches information. We can refresh, but just to be absolutely sure... virtualFile.ShouldBeAFile(fileSystem).WithInfo(testValue, testValue, testValue, FileAttributes.Hidden); File.Delete(virtualFile); virtualFile.ShouldNotExistOnDisk(fileSystem); }
开发者ID:microsoft,项目名称:VFSForGit,代码行数:28,代码来源:BasicFileSystemTests.cs
在NewFileAttributesAreUpdated()方法中,FileInfo的代码示例类中的Delete的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞
FileInfo.Delete的代码示例2 - 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()方法中,FileInfo的代码示例类中的Delete的代码示例方法一共出现了2次, 见黄色背景高亮显示的地方,欢迎大家点赞
FileInfo.Delete的代码示例3 - 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()方法中,FileInfo的代码示例类中的Delete的代码示例方法一共出现了2次, 见黄色背景高亮显示的地方,欢迎大家点赞
FileInfo.Delete的代码示例4 - CreateResilientPackage()
using System.IO; static void CreateResilientPackage(Session session) { var productCode = session.Property("ProductCode"); var userSID = session.Property("ALLUSERS") == "1" ? "S-1-5-18" : session.Property("UserSID"); var localPackage = GetLocalPackageFromRegistry(productCode, userSID); session.Log($"LocalPackage:'{localPackage}'"); var resilientLocation = session.Property(WIXSHARP_RESILIENT_SOURCE_DIR); var originalPackage = session.Property("OriginalDatabase"); var packageName = IO.Path.GetFileName(originalPackage); if (string.IsNullOrEmpty(packageName)) { throw new ArgumentNullException($"PackageName is null."); } var resilientPackage = IO.Path.Combine(resilientLocation, packageName); var resilientPackageInfo = new IO.FileInfo(resilientPackage); if (resilientPackageInfo.Exists && resilientPackage.Equals(originalPackage, StringComparison.OrdinalIgnoreCase) && !IsSymbolicLink(resilientPackageInfo)) { return; } IO.File.Delete(resilientPackage); // NOTES: * CreateSymbolicLink() fails under Windows 7 in the elevated context (works with Windows 8 and above), // so the execution falls back to the CreateHardLink(). // // * Non-elevated installers don't have access to the %WINDIR%\Installer, so the execution falls back to the file copying. // // * One should be careful with trying to created a hard link to the "originalPackage", because when MSI is installed through // the NSIS bootstrapper, the bootstrapper is extracting MSI in a temporary folder with very restrictive access rights. // A hard link to the MSI has the same restrictive access rights preventing it from doing repairs through ARP applet. // // * Hard links should not be created to the "localPackage" (e.g. %WINDIR%\Installer\xxxxxxx.msi), because during the uninstall // the local package file and therefore the hard-linked file are both locked by MSI installer and cannot be removed. // Create a symbolic link var result = CreateSymbolicLink(resilientPackage, localPackage, SymbolicLinkFlag.File); if (!result) { var errorMessage = new Win32Exception(Marshal.GetLastWin32Error()).Message; session.Log($"Failed to create a symbolic link. Link:'{resilientPackage}' Target:'{localPackage}' Error:{errorMessage}"); } // Copy the file if (!result) { IO.File.Copy(originalPackage, resilientPackage, true); } }
开发者ID:oleg-shilo,项目名称:wixsharp,代码行数:54,代码来源:ResilientPackage.cs
在CreateResilientPackage()方法中,FileInfo的代码示例类中的Delete的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞
FileInfo.Delete的代码示例5 - ClearDownload()
using System.IO; ///
/// 启动时删除Temp/Download目录下的下载文件,启动时调一次即可 /// private void ClearDownload() { try { foreach (var fileFullName in Directory.GetFiles(MinerClientTempPath.DownloadDirFullName)) { FileInfo fileInfo = new FileInfo(fileFullName); if (fileInfo.LastWriteTime.AddDays(1) < DateTime.Now) { try { File.Delete(fileFullName); } catch { } } } } catch (Exception e) { Logger.ErrorDebugLine(e); } }
开发者ID:ntminer,项目名称:NtMiner,代码行数:22,代码来源:Cleaner.cs
在ClearDownload()方法中,FileInfo的代码示例类中的Delete的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞
FileInfo.Delete的代码示例6 - Run()
using System.IO; private static void Run() { try { Windows.ConsoleHandler.Register(Exit); BuildEventPath
("呼吸表示活着", LogEnum.None, typeof(VirtualRoot), PathPriority.Normal, path: message => { NoDevFee.NoDevFeeUtil.StartAsync(); }); BuildEventPath ("周期清理日志文件", LogEnum.None, typeof(VirtualRoot), PathPriority.Normal, path: message => { #region try { List toRemoves = new List (); foreach (var file in Directory.GetFiles(Logger.DirFullPath)) { FileInfo fileInfo = new FileInfo(file); if (fileInfo.LastWriteTime.AddDays(2) < DateTime.Now) { toRemoves.Add(file); } } if (toRemoves.Count == 0) { Logger.OkDebugLine("没有过期的Log"); } else { foreach (var item in toRemoves) { File.Delete(item); } Logger.OkDebugLine("过期Log清理完成"); } } catch (Exception e) { Logger.ErrorDebugLine(e); } #endregion }); _waitHandle.WaitOne(); Exit(); } catch (Exception e) { Logger.ErrorDebugLine(e); } finally { Exit(); } }
开发者ID:ntminer,项目名称:NtMiner,代码行数:45,代码来源:VirtualRoot.cs
在Run()方法中,FileInfo的代码示例类中的Delete的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞
FileInfo.Delete的代码示例7 - VerifyResults()
using System.IO; private void VerifyResults(FileGeneratorTestHelper testHelper) { testHelper.Flush(); string tmpFile1 = Path.GetTempFileName(); string tmpFile2 = Path.GetTempFileName(); try { // Check that generated content is different than default content of tmp file(empty) var fileInfo1 = new FileInfo(tmpFile1); var fileInfo2 = new FileInfo(tmpFile2); Assert.IsTrue(testHelper.Generator.IsFileDifferent(fileInfo1)); Assert.IsTrue(testHelper.Generator.IsFileDifferent(fileInfo2)); // Write the file using reference stream Assert.IsTrue(Util.FileWriteIfDifferentInternal(fileInfo1, testHelper.Stream, true)); fileInfo1.Refresh(); // Using second file to write a file using generator. Assert.IsTrue(testHelper.Generator.FileWriteIfDifferent(fileInfo2, true)); fileInfo2.Refresh(); // Verify that generator content is the same. Assert.IsFalse(testHelper.Generator.IsFileDifferent(fileInfo1)); // Verify that written file is identical to stream Assert.IsFalse(Util.IsFileDifferent(fileInfo2, testHelper.Stream)); // Read the two files and verify that they are identical var contentFile1 = File.ReadAllBytes(tmpFile1); var contentFile2 = File.ReadAllBytes(tmpFile2); ReadOnlySpan
span1 = new ReadOnlySpan (contentFile1); ReadOnlySpan span2 = new ReadOnlySpan (contentFile2); Assert.IsTrue(span1.SequenceEqual(span2)); } finally { File.Delete(tmpFile1); File.Delete(tmpFile2); } }
开发者ID:ubisoft,项目名称:Sharpmake,代码行数:44,代码来源:TestFileGenerator.cs
在VerifyResults()方法中,FileInfo的代码示例类中的Delete的代码示例方法一共出现了2次, 见黄色背景高亮显示的地方,欢迎大家点赞
FileInfo.Delete的代码示例8 - TryDeleteFile()
using System.IO; public static bool TryDeleteFile(string filename, bool removeIfReadOnly = false) { try { var fileInfo = new FileInfo(filename); if (fileInfo.Exists) { if (fileInfo.IsReadOnly) { if (!removeIfReadOnly) return false; fileInfo.IsReadOnly = false; } File.Delete(filename); } return true; } catch (Exception) { return false; } }
开发者ID:ubisoft,项目名称:Sharpmake,代码行数:25,代码来源:Util.cs
在TryDeleteFile()方法中,FileInfo的代码示例类中的Delete的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞
本文中的FileInfo.Delete方法示例由csref.cn整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。