这是我得到的代码:
//All files have the same basefilename/
string basefilename = Path.GetFileNameWithoutExtension(entries[0].FileName);
MemoryStream memstream = new MemoryStream();
ZipFile zip = new ZipFile();
foreach (var entry in entries)
{
string newFileName = basefilename + Path.GetExtension(entry.FileName);
zip.AddEntry(newFileName, entry.OpenReader());
}
zip.Save(memstream);
//this will later go in an file-io handler class.
FileStream outstream = File.OpenWrite(@"c:\files\"+basefilename+ ".zip");
memstream.WriteTo(outstream);
outstream.Flush();
outstream.Close();
这是我在调用save()方法时遇到的错误:
{Ionic.Zlib.ZlibException: 状态异常(无效块类型) 在Ionic.Zlib.InflateManager.Inflate(FlushType flush) at Ionic.Zlib.ZlibCodec.Inflate(FlushType flush) 在 Ionic.Zlib.ZlibBaseStream.Read(Byte[] buffer, Int32 offset, Int32 count) 在Ionic.Zlib.DeflateStream.Read(Byte[] buffer, Int32 offset, Int32 count) 在Ionic.Crc.CrcCalculatorStream.Read(Byte[] buffer, Int32 offset, Int32 count) 在 Ionic.Zip.SharedUtilities.ReadWithRetry(Stream s, Byte[] buffer, Int32 offset, Int32 count, String FileName) 在 Ionic.Zip.ZipEntry._WriteEntryData(Stream s) 在 Ionic.Zip.ZipEntry.Write(Stream s) 在Ionic.Zip.ZipFile.Save() 在 Ionic.Zip.ZipFile.Save(Stream outputStream) 在
我做错了什么?