Пример #1
0
        public ZipArchiveEntry CreateEntry(string entryName, CompressionLevel compressionLevel)
        {
            if (disposed)
            {
                throw new ObjectDisposedException("The zip archive has been disposed.");
            }

            if (entryName == string.Empty)
            {
                throw new ArgumentException("Entry name cannot be empty.");
            }

            if (entryName == null)
            {
                throw new ArgumentNullException("entryName");
            }

            if (mode != ZipArchiveMode.Create && mode != ZipArchiveMode.Update)
            {
                throw new NotSupportedException("The zip archive does not support writing.");
            }

            if (zipFile == null)
            {
                throw new InvalidDataException("The zip archive is corrupt, and its entries cannot be retrieved.");
            }

            var memoryStream = new MemoryStream();
            var entry        = zipFile.AddEntry(entryName, memoryStream);
            var archiveEntry = new ZipArchiveEntry(this, entry);

            entries[entryName] = archiveEntry;

            return(archiveEntry);
        }
Пример #2
0
        internal SharpCompress.Archive.Zip.ZipArchiveEntry CreateEntryInternal(string entryName)
        {
            var memoryStream = new MemoryStream();
            var entry        = zipFile.AddEntry(entryName, memoryStream);

            return(entry);
        }