对 FAT32 USB 上的文件进行排序

本文关键字:排序 文件 FAT32 USB | 更新日期: 2023-09-27 17:55:36

im 制作一个应用程序以与列表框相同的顺序对目录中的文件进行排序,现在我试图让它对 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);
          }
      }
}

对 FAT32 USB 上的文件进行排序

好的。所以它是这样的:

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);

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