在fat32 usb上排序文件

时间:2014-04-01 08:46:24

标签: c# sorting fat32

我正在制作一个应用程序,将目录中的文件排序为与列表框相同的顺序,现在我试图让它对fat32文件表中的文件进行排序,但是无法找出如何或者我是否可以在c#上执行此操作任何人都可以帮助我下载将文件添加到列表框的代码

private void openfolder()
{
     if (folderBrowserDialog1.ShowDialog() == DialogResult.OK)
     {
          DirectoryInfo dinfo = new DirectoryInfo(folderBrowserDialog1.SelectedPath);
          FileInfo[] Files = dinfo.GetFiles("*.*");
          foreach (FileInfo file in Files)
          {
              listBox1.Items.Add(file.Name);
          }
      }
}

1 个答案:

答案 0 :(得分:1)

确定。所以它是这样的:

var path = @"U:\";
var di = new DirectoryInfo(path);
var files = di.EnumerateFiles("*.*", SearchOption.TopDirectoryOnly).ToList();
var newDirPath = Path.Combine(path,Guid.NewGuid().ToString("N"));
di = Directory.CreateDirectory(newDirPath);
files.ForEach(f => f.MoveTo(Path.Combine(newDirPath, f.Name)));
files=di.EnumerateFiles("*.*", SearchOption.TopDirectoryOnly)
        .OrderBy(f=>f.CreationTime) //sort here
        .ToList();
files.ForEach(f=>f.MoveTo(Path.Combine(path,f.Name)));
Directory.Delete(newDirPath);

您对移动文件的反对是没有根据的。移动操作不会复制数据。它只是改变了分配表。