【发布时间】:2020-03-16 09:24:57
【问题描述】:
我有点困惑如何从给定路径获取嵌套文件夹名称。许多文件夹可能没有文件夹。
这就是我所做的。我也尝试过子字符串,但后来我得到了 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)"
]
}
【问题讨论】:
-
这是在 Windows 上吗?我从未见过
Directory.GetDirectory()带有正斜杠的返回路径。 -
@SimonC 不幸的是,它没有。我需要将它放在一个数组中,因为我将有一个文件夹,其中嵌套了许多文件夹,我需要获取这些嵌套文件夹的名称并将其存储在一个数组中。我已经尝试过了,但也许我执行错了:(
-
@TanveerBadar 正确的是 Windows,我用“/”替换了“\\”。