我有这样的代码:如何为每个目录创建主组目录名称?
foreach (var map in maps)
{
// This starts a new group
var downloadDirectory = Path.Combine(BaseDirectory, htmlFiles[groupId++]);
BackgroundWorkerConfiguration.urlsDirectories.Add(downloadDirectory);
}
BaseDirectory在此是:d:\测试\ ImagesDirectories
htmlFiles是一个列表包含35个指数法每个索引目录名
froypId为int。
例如在htmlFiles第一索引i看到:Sat24_Africa0 在索引1我看到:Sat24_Africa1 在索引i看到:Sat24_Africa2 。 。 在索引5我看到:Sat24_Asia0 在索引6我看到:Sat24_Asia1 。 。 。 。 等35个目录。
最终名单urlsDirectories是列表看起来像:
In index 0 i see: d:\test\ImagesDirectories\Sat24_Africa0
In index 1 i see: d:\test\ImagesDirectories\Sat24_Africa1
In index 2 i see: d:\test\ImagesDirectories\Sat24_Africa2
.
。 。 在索引33中我看到:d:\ test \ ImagesDirectories \ Sat24_South_america3
最后,我遍历这个List urlsDirectories并创建所有35个目录。
for (int i = 0; i < BackgroundWorkerConfiguration.urlsDirectories.Count; i++)
{
if (!Directory.Exists(Path.Combine(imagesDirectory, BackgroundWorkerConfiguration.urlsDirectories[i])))
{
Directory.CreateDirectory(Path.Combine(imagesDirectory, BackgroundWorkerConfiguration.urlsDirectories[i]));
}
}
但不是创建基本目录,我想会有一个主目录首先为欧洲,然后在欧洲有子目录下35个目录:
非洲,亚洲,欧洲,中东,北美洲,大洋洲,南美洲
而且每个目录例如非洲有目录下:Africa0 Africa1 Africa2 ....
因此,它应该是这样的:
D:\test\ImagesDirectories\Europe\Africa\Africa0
D:\test\ImagesDirectories\Europe\Africa\Africa1
D:\test\ImagesDirectories\Europe\Africa\Africa2
D:\test\ImagesDirectories\Europe\Africa\Africa3
D:\test\ImagesDirectories\Europe\Africa\Africa4
D:\test\ImagesDirectories\Europe\Asia\Asia0
D:\test\ImagesDirectories\Europe\Asia\Asia1
D:\test\ImagesDirectories\Europe\Asia\Asia2
D:\test\ImagesDirectories\Europe\Asia\Asia3
D:\test\ImagesDirectories\Europe\Asia\Asia4
依此类推。现在我在urlsDirectories中的目录中拥有所有名称,但我如何解析它们以及如何制作目录组?
这是真正的我在BaseDirectory变量看:
C:\Users\bout0_000\AppData\Local\WeatherMaps\WeatherMaps\ImagesDirectory
那么这是我在真正看到htmlFiles在索引0:
Sat24_Africa0
这是我目前看到的在urls中的实际目录索引0中的目录:
C:\Users\bout0_000\AppData\Local\WeatherMaps\WeatherMaps\ImagesDirectory\Sat24_Africa0
如何进行更改?