将文件夹存储在zip存档中

时间:2013-06-29 16:25:48

标签: c# asp.net zip

此代码是即时创建zip存档的有用方法:

(我不认为在这里发布整个代码会有所帮助)

http://www.codeproject.com/Articles/209731/Csharp-use-Zip-archives-without-external-libraries

我正在使用它来压缩文本文件,以便通过Response.BinaryWrite下载。

这是我的实施:

filesfileNames均为List<string>

        // add the files to a zip
        var str = new MemoryStream();
        using (var arc = ZipArchive.OpenOnStream(str))
        {
            for (int i = 0; i < files.Count(); i++)
            {
                using (var fs = arc.AddFile(fileNames[i]).GetStream(FileMode.Open, FileAccess.ReadWrite))
                {
                    System.Text.ASCIIEncoding encoding = new System.Text.ASCIIEncoding();
                    Byte[] bytes = encoding.GetBytes(files[i]);
                    fs.Write(bytes, 0, bytes.Length);
                }
            }
        }

        result = str.GetBuffer();

        // return the zip
        return result;

我的问题是,有人会想到将文件存储在档案中的单独文件夹中的方法吗?

感谢您的帮助!

0 个答案:

没有答案