我正在试图找出如何创建包含具有不同扩展名的文件的zip存档,例如.txt文件,.html文件
如果我这样做:
using (var zipArchive = new ZipArchive(memory, ZipArchiveMode.Create, true))
{
var file1= zipArchive .CreateEntry("file1.html");
var file2= zipArchive .CreateEntry("file2.txt");
using (var entryStream = file1.Open())
using (var sw = new StreamWriter(entryStream))
{
streamWriter.Write("testing testinsg steing");
}
using (var entryStream = file2.Open())
using (var sw = new StreamWriter(entryStream))
{
sw.Write("xyxyxyxyxyxy");
}
}
创建模式中的条目只能写入一次,并且只能写入一个条目 可以一次开放。
我该如何解决这个问题?
答案 0 :(得分:6)
你只需要向下移动:
var file2= zipArchive .CreateEntry("file2.txt");
...并将 放在 后,您已完成对上一条目的写入:
using (var zipArchive = new ZipArchive(memory, ZipArchiveMode.Create, true))
{
var file1= zipArchive .CreateEntry("file1.html");
using (var entryStream = file1.Open())
using (var sw = new StreamWriter(entryStream))
{
streamWriter.Write("testing testinsg steing");
}
var file2= zipArchive .CreateEntry("file2.txt"); // <-- move this down
using (var entryStream = file2.Open())
using (var sw = new StreamWriter(entryStream))
{
sw.Write("xyxyxyxyxyxy");
}
}