c# - 从路径中获取所有嵌套文件夹名称(无路径)
问题描述
我有点困惑如何从给定路径获取嵌套文件夹名称。许多文件夹可能没有文件夹。
这就是我所做的。我也尝试过子串,但后来我得到了 1 个返回的结果,整个文件的结果都是一样的。
foreach (string fL in GetDirectories(targetDirectory))
{
foreach (string fN in ProcessDirectory(fL))
{
string[] subType = Directory.GetDirectories(directory);
myDocs.Add(new Documents
{
Id = "1",
Directory = directory,
Type = type,
FilePath = filePath,
FileName = fN,
Description = description,
SubType = subType
});
}
}
我得到的输出如下:
{
"Id": "1",
"Directory": "C:/aaa/bbb/ccc/ddd/eee",
"Type": "QA",
"FilePath": "C:/aaa/bbb/ccc/ddd/eee/New Text Document.txt",
"FileName": "New Text Document.txt",
"Description": "New Text Document",
"SubType": [
"C:/aaa/bbb/ccc/ddd/eee\\New folder",
"C:/aaa/bbb/ccc/ddd/eee\\New folder - Copy",
"C:/aaa/bbb/ccc/ddd/eee\\New folder - Copy (2)",
"C:/aaa/bbb/ccc/ddd/eee\\New folder - Copy (3)",
"C:/aaa/bbb/ccc/ddd/eee\\New folder - Copy (4)",
"C:/aaa/bbb/ccc/ddd/eee\\New folder - Copy (5)",
"C:/aaa/bbb/ccc/ddd/eee\\New folder - Copy (6)",
"C:/aaa/bbb/ccc/ddd/eee\\New folder - Copy (7)",
"C:/aaa/bbb/ccc/ddd/eee\\New folder - Copy (8)",
"C:/aaa/bbb/ccc/ddd/eee\\New folder - Copy (9)"
]
}
期望的结果:
{
"Id": "1",
"Directory": "C:/aaa/bbb/ccc/ddd/eee",
"Type": "QA",
"FilePath": "C:/aaa/bbb/ccc/ddd/eee/New Text Document.txt",
"FileName": "New Text Document.txt",
"Description": "New Text Document",
"SubType": [
"New folder",
"New folder - Copy",
"New folder - Copy (2)",
"New folder - Copy (3)",
"New folder - Copy (4)",
"New folder - Copy (5)",
"New folder - Copy (6)",
"New folder - Copy (7)",
"New folder - Copy (8)",
"New folder - Copy (9)"
]
}
解决方案
您可以使用Path.GetFileName()
从完整路径中获取目录的名称。是的,它被称为 Get FileName,但实际上它只是在最后一个 slash 之后获取所有内容。(它实际上并不查看文件系统)
如果你可以使用 Linq,你可以这样做:
string[] subType = Directory.GetDirectories(directory)
.Select(Path.GetFileName).ToArray();
推荐阅读
- r - R:根据条件将前导行值设置为 NA
- javascript - 如何在循环中在 html 画布上绘制图像
- php - 在 Ubuntu 20 上增加 PHP 的 memory_limit 不起作用
- python - 如何提高 .loc 在 Python 中附加数据帧的性能?
- jenkins - 通过 Jenkins 管道在 Jfrog 中发布的附加空白模块
- node.js - 发送 index.html 时从未触发主“/”路由控制器
- html - Angular中表格的操作列不起作用
- flutter - Image_Picker - 如果我使用拆分,图像不会显示
- python - 为什么我无法安装烧瓶(PIP 错误)?
- android - 如何在 Kotlin 中按类别获取问题