У меня есть zip-файл. Я хочу открыть его с помощью SharpZipLib и добавить к нему новый ZipEntry, созданный в памяти. Я новичок в SharpZipLib. Я очень много гуглил, но не смог найти подобную проблему.
Мой пример кода:
public Stream GetNewZipFileStream(string zipFilePath)
{
byte[] zipFileBytes = null;
zipFileBytes = ReadFileBytes(zipFilePath);
var zipFileMemoryStream = new MemoryStream(zipFileBytes);
ZipOutputStream zipOutStream = new ZipOutputStream(zipFileMemoryStream);
var newEntry = new ZipEntry("NewFile.txt");
zipOutStream.PutNextEntry(newEntry);
var newFileMemoryStream = MakeOnTheFlyStream();
StreamUtils.Copy(newFileMemoryStream , zipOutStream, new byte[4096]);
zipOutStream.CloseEntry();
newFileMemoryStream.Close();
zipOutStream.IsStreamOwner = false;
zipOutStream.Close();
newFileMemoryStream.Position = 0;
return newFileMemoryStream;
}
ReadFileBytes
и MakeOnTheFlyStream
- мои методы.
MakeOnTheFlyStrem
и не хочу сохранять его на жестком диске из соображений безопасности. Итак, у меня есть FileStream, и я хочу добавить его в ZipFile. - person Mohammad Ali Taqvazadeh   schedule 04.11.2019