在我的硬盘上,我有例如:
目录 1 目录 2 目录 3 目录 4 .....
我的代码是:
DirectoryInfo dInfo = new DirectoryInfo(AutomaticsubDirectoryName);
DirectoryInfo[] subdirs = dInfo.GetDirectories();
所以subdirs
我得到了所有目录,但它们的顺序与我的硬盘上的顺序不同。我怎样才能对它们进行排序,以便它们subdirs
按照它们在我的硬盘上的顺序排列?
解决了这个问题:
DirectoryInfo[] subdirs = dInfo.GetDirectories().OrderBy(d =>
{
int i = 0;
if (d.Name.Contains("Lightning ") && d.Name.Contains(" Length") && d.Name.IndexOf("Lightning ") < d.Name.IndexOf(" Length"))
{
string z = d.Name.Substring(("Lightning ").Length);
string f = z.Substring(0, z.IndexOf(" Length"));
if (Int32.TryParse(f, out i))
return i;
else
return -1;
}
else
return -1;
}).ToArray();
工作完美。