Back to Devexpress

ZipArchive.AddStream(String, Stream) Method

officefileapi-devexpress-dot-compression-dot-ziparchive-dot-addstream-x28-system-dot-string-system-dot-io-dot-stream-x29.md

latest4.8 KB
Original Source

ZipArchive.AddStream(String, Stream) Method

Creates a zip stream item and adds it to the archive.

Namespace : DevExpress.Compression

Assembly : DevExpress.Docs.v25.2.dll

NuGet Package : DevExpress.Document.Processor

Declaration

csharp
public ZipStreamItem AddStream(
    string name,
    Stream stream
)
vb
Public Function AddStream(
    name As String,
    stream As Stream
) As ZipStreamItem

Parameters

NameTypeDescription
nameString

A string that is the name of the newly created zip item.

| | stream | Stream |

A Stream object containing data to add to the archive.

|

Returns

TypeDescription
ZipStreamItem

A ZipStreamItem object that references the stream of data included in an archive.

|

Remarks

The AddStream method does not make a copy of original steam. For proper operation, you should ensure that the stream is not closed until the archive is saved using the ZipArchive.Save method. After the archive is saved, you have to close and dispose of the stream yourself.

View Example

csharp
using DevExpress.Compression;

public void ArchiveStream() {
    using (Stream myStream = new MemoryStream(System.Text.Encoding.UTF8.GetBytes("DevExpress"))) {
        using (Stream myZippedStream = new FileStream("ArchiveStream.zip", System.IO.FileMode.Create)) {
            using (ZipArchive archive = new ZipArchive()) {
                archive.AddStream("myStream", myStream);
                archive.Save(myZippedStream);
            }
        }
    }
}
vb
Imports DevExpress.Compression

Public Sub ArchiveStream()
    Using myStream As Stream = New MemoryStream(System.Text.Encoding.UTF8.GetBytes("DevExpress"))
        Using myZippedStream As Stream = New FileStream("ArchiveStream.zip", System.IO.FileMode.Create)
            Using archive As New ZipArchive()
                archive.AddStream("myStream", myStream)
                archive.Save(myZippedStream)
            End Using
        End Using
    End Using
End Sub

The following code snippets (auto-collected from DevExpress Examples) contain references to the AddStream(String, Stream) method.

Note

The algorithm used to collect these code examples remains a work in progress. Accordingly, the links and snippets below may produce inaccurate results. If you encounter an issue with code examples below, please use the feedback form on this page to report the issue.

office-file-api-in-web-api-app/CS/Controllers/PdfController.cs#L53

csharp
result.Seek(0, SeekOrigin.Begin);
    archive.AddStream($"page{i + 1}.pdf", result);
}

zip-compression-and-archive-api-examples/CS/CompressionLibraryExamples/ZipExamples.cs#L159

csharp
using (ZipArchive archive = new ZipArchive()) {
    archive.AddStream("myStream", myStream);
    archive.Save(myZippedStream);

zip-compression-and-archive-api-examples/VB/CompressionLibraryExamples/ZipExamples.vb#L164

vb
Using archive As New ZipArchive()
    archive.AddStream("myStream", myStream)
    archive.Save(myZippedStream)

See Also

ZipArchive Class

ZipArchive Members

DevExpress.Compression Namespace