- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想返回“SomeFolder”目录中所有子目录的列表,不包括“Admin”和“Templates”目录。
我有以下文件夹结构(简化):
C:\inetpub\wwwroot\MyWebsite\SomeFolder\RandomString
C:\inetpub\wwwroot\MyWebsite\SomeFolder\RandomString
C:\inetpub\wwwroot\MyWebsite\SomeFolder\RandomString
C:\inetpub\wwwroot\MyWebsite\SomeFolder\Admin
C:\inetpub\wwwroot\MyWebsite\SomeFolder\Templates
“SomeFolder”可以包含不同数量的“RandomString”文件夹(从 ~10 到 ~100 之间的任何地方)。
这是我尝试过的:
var dirs = Directory.GetDirectories(Server.MapPath(".."))
.Where(s => !s.EndsWith("Admin") || !s.EndsWith("Templates"));
foreach (string dir in dirs)
{
lit.Text += Environment.NewLine + dir;
}
这将返回完整的文件夹列表(如上所示),没有过滤掉“Admin”和“Templates”。
有趣的是,如果我将 LINQ .Where
子句更改为 include,而不是 exclude,则“Admin”和“Templates”会起作用,这意味着它只返回“Admin”和“Templates”的路径。
.Where(s => s.EndsWith("Admin") || s.EndsWith("Templates"));
如果 LINQ 不是解决方案,是否有任何方法可以使用 GetDirectories SearchPattern 来过滤目录?
最佳答案
你可以这样做:
//list your excluded dirs
private List<string> _excludedDirectories= new List<string>() { "Admin", "Templates" };
//method to check
static bool isExcluded(List<string> exludedDirList, string target)
{
return exludedDirList.Any(d => new DirectoryInfo(target).Name.Equals(d));
}
//then use this
var filteredDirs = Directory.GetDirectories(path).Where(d => !isExcluded(_excludedDirectories, d));
关于c# - 使用 Directory.GetDirectories 时如何排除文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17036395/
C# 和 ASP.net 的新手,我正在努力检索目录并且已经这样做了。 { public partial class WebForm1 : System.Web.UI.Page {
虽然在documentation中没有提到, Directory.GetDirectories()似乎总是返回按字典顺序排序的目录名称数组。依赖这个实现细节是否安全(它适合我的需要)还是我应该偏执并根
我正在使用 DirectoryInfo.GetDirectories()递归查找给定路径下的所有子目录。 但是,我想排除 System 文件夹,并且没有明确的方法。 在 FindFirstFile/F
使用“Directory.GetDirectories().Length” 除了 UnauthorizedAccessexception 文件夹,我怎样才能得到文件夹的数量?我只想获取可访问文件夹的数
使用 c# GetDirectories 检索搜索目录下的文件夹。该代码适用于搜索的所有其他目录,但单个目录除外。具体来说,GetDirectories 返回两个不同的文件夹,一个包含搜索模式,另一个
我正在尝试遍历“c:\Users”中 Windows 中的用户文件夹列表,但不包括 Microsoft 内置用户文件夹,下面是我用来完成此壮举的代码段,但它是由于某种原因没有按预期工作。 privat
我正在 Android 中运行 cordova-2.6.0 PhoneGap。我面临在函数中返回 bool 值的问题。为什么我的函数返回未定义以及如何修复它?有什么想法吗?? function isD
我正在使用 string[] dirs = Directory.GetDirectories("instances", "*") 获取所有目录。 但它返回如下目录: 实例\\test01,实例\\te
你好,我目前正在获取如下目录: dirs = Directory .GetDirectories(@"C:\Users\jphillips\Desktop\test", "*", SearchOp
我正在尝试访问 cordova iOS 应用程序中的文件系统,但当我使用 getDirectory 方法时它总是返回错误代码 3 (ABORT_ERR)。 我正在使用以下代码: window.requ
我遇到了一个令我困惑的生产性能问题。我希望有人见过类似的东西或者至少有一些故障排除技术。 我支持继承的 asp.net Web 应用程序,该应用程序从共享网络驱动器检索文件。我选择对一个特定文件夹 [
这个问题在这里已经有了答案: Bug in Windows's FindFirstFile() function? (2 个答案) 关闭 6 年前。 假设您有一个包含以下目录的目录: dontget
我想返回“SomeFolder”目录中所有子目录的列表,不包括“Admin”和“Templates”目录。 我有以下文件夹结构(简化): C:\inetpub\wwwroot\MyWebsit
大家好我目前通过这个电话得到了我想要的子目录: foreach (DirectoryInfo dir in parent) { try {
我正在尝试使用“metadata-extractor-2.8.0.jar”库从here获取特定的EXIF(以及后来的IPTC)标签. 对于第一个简单用法,我想尝试原始值“入门”中的代码。但我遇到了一个
当我尝试使用 Directory.GetDirectories(systemVolumePath) 访问系统卷时,我的应用程序抛出 UnauthorizedAccessException。美好的。我在
在 MSDN 文档中,它说它只返回目录名(“返回值类型: ...包含路径中子目录名称的字符串类型数组。”),但是在他们的示例代码中,他们递归而不连接它们,所以这是否意味着他们返回完整路径? 即他们的示
所需的搜索描述: Any string that contains either v2 or v3 (case insensitive) 我正在尝试使用 Directory.GetDirectorie
此 Cordova 代码适用于 iOS 和大多数 Android 设备,但在某些三星设备上失败: window.requestFileSystem(LocalFileSystem.PERSISTENT
有谁知道“etc”在目录枚举方面有什么特别之处,还有其他类似的东西吗?如何避免它不可见? public class Foo { [Test] public void Etc()
我是一名优秀的程序员,十分优秀!