C# Directory.GetDirectories的代码示例
通过代码示例来学习C# Directory.GetDirectories方法
通过代码示例来学习编程是非常高效的。
1. 代码示例提供了一个具体而直观的学习环境,使初学者能够立即看到编程概念和语法的实际应用。
2. 通过分析和模仿现有的代码实例,初学者可以更好地理解编程逻辑和算法的工作原理。
3. 代码实例往往涵盖了多种编程技巧和最佳实践,通过学习和模仿这些实例,学习者可以逐步掌握如何编写高效、可读性强和可维护的代码。这对于初学者来说,是一种快速提升编程水平的有效途径。
Directory.GetDirectories是C#的System.IO命名空间下中的一个方法, 小编为大家找了一些网络大拿们常见的代码示例,源码中的Directory.GetDirectories() 已经帮大家高亮显示了,大家可以重点学习Directory.GetDirectories() 方法的写法,从而快速掌握该方法的应用。
Directory.GetDirectories的代码示例1 - CloneCreatesCorrectFilesInRoot()
using System.IO; [TestCase] public void CloneCreatesCorrectFilesInRoot() { GVFSFunctionalTestEnlistment enlistment = GVFSFunctionalTestEnlistment.CloneAndMount(GVFSTestConfig.PathToGVFS); try { string[] files = Directory.GetFiles(enlistment.EnlistmentRoot); files.Length.ShouldEqual(1); files.ShouldContain(x => Path.GetFileName(x).Equals("git.cmd", StringComparison.Ordinal)); string[] directories = Directory.GetDirectories(enlistment.EnlistmentRoot); directories.Length.ShouldEqual(2); directories.ShouldContain(x => Path.GetFileName(x).Equals(GVFSTestConfig.DotGVFSRoot, StringComparison.Ordinal)); directories.ShouldContain(x => Path.GetFileName(x).Equals("src", StringComparison.Ordinal)); } finally { enlistment.UnmountAndDeleteAll(); } }
开发者ID:microsoft,项目名称:VFSForGit,代码行数:21,代码来源:CloneTests.cs
在CloneCreatesCorrectFilesInRoot()方法中,Directory的代码示例类中的GetDirectories的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞
Directory.GetDirectories的代码示例2 - RecursiveFileCopyImpl()
using System.IO; private void RecursiveFileCopyImpl(string sourcePath, string targetPath, bool copySubFolders, bool hideErrorsFromStdout) { if (!Directory.Exists(targetPath)) { Directory.CreateDirectory(targetPath); } foreach (string filePath in Directory.EnumerateFiles(sourcePath)) { string fileName = Path.GetFileName(filePath); try { string sourceFilePath = Path.Combine(sourcePath, fileName); if (!GVFSPlatform.Instance.FileSystem.IsSocket(sourceFilePath) && !GVFSPlatform.Instance.FileSystem.IsExecutable(sourceFilePath)) { File.Copy( Path.Combine(sourcePath, fileName), Path.Combine(targetPath, fileName)); } } catch (Exception e) { this.WriteMessage( string.Format( "Failed to copy '{0}' in {1} with exception {2}", fileName, sourcePath, e), hideErrorsFromStdout); } } if (copySubFolders) { DirectoryInfo dir = new DirectoryInfo(sourcePath); foreach (DirectoryInfo subdir in dir.GetDirectories()) { string targetFolderPath = Path.Combine(targetPath, subdir.Name); try { this.RecursiveFileCopyImpl(subdir.FullName, targetFolderPath, copySubFolders, hideErrorsFromStdout); } catch (Exception e) { this.WriteMessage( string.Format( "Failed to copy subfolder '{0}' to '{1}' with exception {2}", subdir.FullName, targetFolderPath, e), hideErrorsFromStdout); } } } }
开发者ID:microsoft,项目名称:VFSForGit,代码行数:58,代码来源:DiagnoseVerb.cs
在RecursiveFileCopyImpl()方法中,Directory的代码示例类中的GetDirectories的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞
Directory.GetDirectories的代码示例3 - GetLooseObjectFiles()
using System.IO; private List
GetLooseObjectFiles() { List looseObjectFiles = new List (); foreach (string directory in Directory.GetDirectories(this.GitObjectRoot)) { // Check if the directory is 2 letter HEX if (Regex.IsMatch(directory, @"[/\\][0-9a-fA-F]{2}$")) { string[] files = Directory.GetFiles(directory); looseObjectFiles.AddRange(files); } } return looseObjectFiles; }
开发者ID:microsoft,项目名称:VFSForGit,代码行数:17,代码来源:LooseObjectStepTests.cs
在GetLooseObjectFiles()方法中,Directory的代码示例类中的GetDirectories的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞
Directory.GetDirectories的代码示例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()方法中,Directory的代码示例类中的GetDirectories的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞
Directory.GetDirectories的代码示例5 - TearDown()
using System.IO; [TearDown] public void TearDown() { GitProcess.Invoke(this.Enlistment.RepoRoot, "clean -xdf"); GitProcess.Invoke(this.Enlistment.RepoRoot, "reset --hard"); this.gvfsProcess.Sparse("--disable", shouldSucceed: true); // Remove all sparse folders should make all folders appear again string[] directories = Directory.GetDirectories(this.Enlistment.RepoRoot, "*", SearchOption.AllDirectories) .Where(x => !x.Contains(Path.DirectorySeparatorChar + ".git" + Path.DirectorySeparatorChar)) .ToArray(); directories.ShouldMatchInOrder(this.allDirectories); this.ValidateFoldersInSparseList(NoSparseFolders); }
开发者ID:microsoft,项目名称:VFSForGit,代码行数:17,代码来源:SparseTests.cs
在TearDown()方法中,Directory的代码示例类中的GetDirectories的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞
Directory.GetDirectories的代码示例6 - DeleteIfExists()
using System.IO; ///
/// Deletes File/Directory from by the specified path if it exists. /// /// The path. /// if set tofalse handle all exceptions silently. ///public static string DeleteIfExists(this string path, bool @throw = false) { void deleteFile(string file) { try { var fullPath = IO.Path.GetFullPath(file); if (IO.File.Exists(fullPath)) IO.File.Delete(fullPath); } catch { if (@throw) throw; } } void deleteDir(string file) { try { var fullPath = IO.Path.GetFullPath(file); if (IO.Directory.Exists(fullPath)) IO.Directory.Delete(fullPath); } catch { if (@throw) throw; } } if (path.IsDirectory()) { IO.Directory.GetFiles(path, "*", IO.SearchOption.AllDirectories) .ForEach(deleteFile); IO.Directory.GetDirectories(path, "*", IO.SearchOption.AllDirectories) .OrderByDescending(x => x) .ForEach(deleteDir); deleteDir(path); } else { deleteFile(path); } return path; }
开发者ID:oleg-shilo,项目名称:wixsharp,代码行数:58,代码来源:Extensions.cs
在DeleteIfExists()方法中,Directory的代码示例类中的GetDirectories的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞
Directory.GetDirectories的代码示例7 - GetAllItems()
using System.IO; ///
/// Analyses /// The base directory for file analysis. It is used in conjunction with /// relativeand returns all files (including subdirectories) matching . /// . Though takes precedence if it is an absolute path. /// Array of /// Parent Wix# directory public WixEntity[] GetAllItems(string baseDirectory, Dir parentWixDir = null) { if (IO.Path.IsPathRooted(Directory)) baseDirectory = Directory; if (baseDirectory.IsEmpty()) baseDirectory = Environment.CurrentDirectory; baseDirectory = IO.Path.GetFullPath(baseDirectory); string rootDirPath; if (IO.Path.IsPathRooted(Directory)) rootDirPath = Directory; else rootDirPath = Utils.PathCombine(baseDirectory, Directory); void AgregateSubDirs(Dir parentDir, string dirPath) { foreach (var subDirPath in IO.Directory.GetDirectories(dirPath)) { var dirName = IO.Path.GetFileName(subDirPath); Dir subDir = parentDir.Dirs.FirstOrDefault(dir => dir.Name.SameAs(dirName, ignoreCase: true)); if (subDir == null) { subDir = new Dir(dirName); parentDir.AddDir(subDir); } subDir.AddFeatures(this.ActualFeatures); subDir.AddDirFileCollection( new DirFiles(IO.Path.Combine(subDirPath, this.IncludeMask)) { Feature = this.Feature, Features = this.Features, AttributesDefinition = this.AttributesDefinition, Attributes = this.Attributes, Filter = this.Filter, OnProcess = this.OnProcess }); AgregateSubDirs(subDir, subDirPath); } }; var result = new Listinstances, which are either or/and objects. { new DirFiles(IO.Path.Combine(rootDirPath, this.IncludeMask)) { Feature = this.Feature, Features = this.Features, AttributesDefinition = this.AttributesDefinition, Attributes = this.Attributes.Clone(), Filter = this.Filter, OnProcess = this.OnProcess } }; if (!IO.Directory.Exists(rootDirPath)) throw new IO.DirectoryNotFoundException(rootDirPath); foreach (var subDirPath in System.IO.Directory.GetDirectories(rootDirPath)) { var dirName = IO.Path.GetFileName(subDirPath); var subDir = parentWixDir?.Dirs.FirstOrDefault(dir => dir.Name.SameAs(dirName, ignoreCase: true)); if (subDir == null) { subDir = new Dir(dirName); result.Add(subDir); } subDir.AddFeatures(this.ActualFeatures); subDir.AddDirFileCollection( new DirFiles(IO.Path.Combine(subDirPath, this.IncludeMask)) { Feature = this.Feature, Features = this.Features, AttributesDefinition = this.AttributesDefinition, Attributes = this.Attributes, Filter = this.Filter, OnProcess = this.OnProcess }); AgregateSubDirs(subDir, subDirPath); } return result.ToArray(); }
开发者ID:oleg-shilo,项目名称:wixsharp,代码行数:99,代码来源:Files.cs
在GetAllItems()方法中,Directory的代码示例类中的GetDirectories的代码示例方法一共出现了2次, 见黄色背景高亮显示的地方,欢迎大家点赞
Directory.GetDirectories的代码示例8 - OnBeforeExpand()
using System.IO; public void OnBeforeExpand() { if (IsExpanded || !CanExpand) return; Nodes.Clear(); foreach (string str in Directory.GetDirectories($"{_path}\\")) { if (File.GetAttributes(str).HasFlag(FileAttributes.Directory)) Nodes.Add(new ExplorerFolder(str)); } foreach (string str in Directory.GetFiles($"{_path}\\")) { if (!File.GetAttributes(str).HasFlag(FileAttributes.Directory)) Nodes.Add(new ExplorerFile(str)); } }
开发者ID:KillzXGaming,项目名称:Switch-Toolbox,代码行数:17,代码来源:ExplorerFolder.cs
在OnBeforeExpand()方法中,Directory的代码示例类中的GetDirectories的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞
本文中的Directory.GetDirectories方法示例由csref.cn整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。