代码之家  ›  专栏  ›  技术社区  ›  Amir

ZIP文件之间有什么区别吗?

  •  2
  • Amir  · 技术社区  · 6 年前

    我使用Windows compress创建了一个ZIP文件,然后使用 . 在我的输出我有两个不同的输出集!

    已创建ZIP文件。

    • 你曾经面对过这个问题吗?
    • 我如何处理这种情况?
    • 还有其他车型吗?

    Windows压缩ZIP文件的输出:

    DirectoryName:data FileName:data.bin
    DirectoryName: FileName:manifest.txt
    DirectoryName:pdfs FileName:some.pdf
    

    WinRAR ZIP文件的输出:

    DirectoryName: FileName:manifest.txt
    DirectoryName:data FileName:
    DirectoryName:data FileName:data.bin
    DirectoryName:pdfs FileName:
    DirectoryName:pdfs FileName:some.pdf
    

    我使用此代码生成上述输出:

    using (ZipArchive archive = ZipFile.OpenRead(zipPath))
    {
        foreach (ZipArchiveEntry entry in archive.Entries)
        {
            TreeNodeDetails tnd = new TreeNodeDetails(entry.FullName, seq_folder_id++, NODETYPE.ZIPFILE, NODE_Format.DIRECTORY);
            Console.WriteLine("DirectoryName:" + tnd.directoryName + " FileName:" + tnd.fileName);
            InitiateTree(rootTreeNode, tnd);
        }
    }
    
    2 回复  |  直到 5 年前
        1
  •  2
  •   Technivorous    6 年前

    是的,有几种压缩类型,最常见的是Zip、GZip和Rar。您想要哪种类型取决于您将使用它做什么,以及您将使用什么程序进行压缩/解压缩,而且既然您似乎正在编写自己的,那么解压也应该对您有用。三种主要类型之间的大小差别不大,尽管这取决于压缩的归档文件的大小。所以这取决于你!

    如果你担心的东西出了问题,你可以解压他们和比较的内容,然后你可以决定的基础上压缩的大小保持哪一个。zip一直比较常见,但现在大多数zip程序也处理rar。

        2
  •  1
  •   Poul Bak    6 年前

    这两个例子在功能上没有区别。例如:

    DirectoryName:data FileName:data.bin
    

    'data' 不存在,它将被创建,然后 data.bin '文件将被提取并添加到该文件夹。