如何对使用dotnet Zip创建的zip文件中包含的文件发出命令

Adi*_*rti 5 c# csv dotnetzip

我希望能够在使用DotNet Zip创建zip时包含给定订单的文件 .

文件没有按照它们添加到zip中的顺序出现.现在订单似乎是随机的.

我想首先包含文件xyz-Header,xyz-Summary,然后包含其余文件.

XYZ-Header.csv

XYZ-Summary.csv

XYZ-Male.csv

XYZ-Female.csv

其他文件的xyz和名称以编程方式确定,但始终包含Header和Summary文件.

代码片段

    private MemoryStream GetZip()
    {
        ZipFile zip = new ZipFile();
        List<string, string> files = getFiles();
        zip.AddEntry("xyz-Header.csv", getHeader(files ));
        zip.AddEntry("xyz-Summary", getSummary(files));

        foreach (var x in files)
        {
            zip.AddEntry("xyz-" + x.Item1 + ".csv", x.Item2);
        }

        MemoryStream memoryStream = new MemoryStream();
        zip.Save(memoryStream);
        memoryStream.position = 0;
        return memoryStream;
    }
Run Code Online (Sandbox Code Playgroud)

我将不胜感激任何帮助.

Pet*_*ter 0

没有理由必须在 zip 中对文件进行排序,您可以获取文件列表并给出您喜欢的任何顺序:

  using (ZipFile zip = ZipFile.Read(NameOfExistingZipFile))
  {
    foreach (ZipEntry e in zip.Order(x => x.FileName))
    {
      // do your styff e.Extract();
    }
  }
Run Code Online (Sandbox Code Playgroud)