ZipArchive.CreateEntry Methode

Definition

Erstellt einen leeren Eintrag im ZIP-Archiv.

Überlädt

CreateEntry(String)

Erstellt einen leeren Eintrag, der den angegebenen Pfad und Eintragsnamen im ZIP-Archiv Ebene verwendet.

CreateEntry(String, CompressionLevel)

Erstellt einen leeren Eintrag, der den angegebenen Eintragsnamen und die Komprimierung im ZIP-Archiv Ebene verwendet.

CreateEntry(String)

Quelle:
ZipArchive.cs
Quelle:
ZipArchive.cs
Quelle:
ZipArchive.cs

Erstellt einen leeren Eintrag, der den angegebenen Pfad und Eintragsnamen im ZIP-Archiv Ebene verwendet.

public:
 System::IO::Compression::ZipArchiveEntry ^ CreateEntry(System::String ^ entryName);
public System.IO.Compression.ZipArchiveEntry CreateEntry (string entryName);
member this.CreateEntry : string -> System.IO.Compression.ZipArchiveEntry
Public Function CreateEntry (entryName As String) As ZipArchiveEntry

Parameter

entryName
String

Ein Pfad relativ zum Stamm des Archivs, der den Namen des Eintrags angibt, der erstellt werden soll.

Gibt zurück

Ein leerer Eintrag im ZIP-Archiv.

Ausnahmen

entryName ist Empty.

entryName ist null.

Das ZIP-Archiv unterstützt keine Schreibvorgänge.

Die ZIP-Archiv wurde freigegeben.

Beispiele

Im folgenden Beispiel wird gezeigt, wie Sie mithilfe eines Datenstroms einen Eintrag erstellen und in diesen schreiben.

using System;
using System.IO;
using System.IO.Compression;

namespace ConsoleApplication
{
    class Program
    {
        static void Main(string[] args)
        {
            using (FileStream zipToOpen = new FileStream(@"c:\users\exampleuser\release.zip", FileMode.Open))
            {
                using (ZipArchive archive = new ZipArchive(zipToOpen, ZipArchiveMode.Update))
                {
                    ZipArchiveEntry readmeEntry = archive.CreateEntry("Readme.txt");
                    using (StreamWriter writer = new StreamWriter(readmeEntry.Open()))
                    {
                            writer.WriteLine("Information about this package.");
                            writer.WriteLine("========================");
                    }
                }
            }
        }
    }
}
open System.IO
open System.IO.Compression

do
    use zipToOpen = new FileStream(@"c:\users\exampleuser\release.zip", FileMode.Open)

    use archive = new ZipArchive(zipToOpen, ZipArchiveMode.Update)

    let readmeEntry = archive.CreateEntry "Readme.txt"
    use writer = new StreamWriter(readmeEntry.Open())

    writer.WriteLine "Information about this package."
    writer.WriteLine "========================"
Imports System.IO
Imports System.IO.Compression

Module Module1

    Sub Main()
        Using zipToOpen As FileStream = New FileStream("c:\users\exampleuser\release.zip", FileMode.Open)
            Using archive As ZipArchive = New ZipArchive(zipToOpen, ZipArchiveMode.Update)
                Dim readmeEntry As ZipArchiveEntry = archive.CreateEntry("Readme.txt")
                Using writer As StreamWriter = New StreamWriter(readmeEntry.Open())
                    writer.WriteLine("Information about this package.")
                    writer.WriteLine("========================")
                End Using
            End Using
        End Using
    End Sub

End Module

Hinweise

Die entryName Zeichenfolge sollte den relativen Pfad des Eintrags widerspiegeln, den Sie im ZIP-Archiv erstellen möchten. Es gibt keine Einschränkung für die von Ihnen bereitgestellte Zeichenfolge. Wenn er jedoch nicht als relativer Pfad formatiert ist, wird der Eintrag erstellt, aber sie erhalten möglicherweise eine Ausnahme, wenn Sie den Inhalt des ZIP-Archivs extrahieren. Wenn im Archiv bereits ein Eintrag mit dem angegebenen Pfad und Namen vorhanden ist, wird ein zweiter Eintrag mit demselben Pfad und Namen erstellt.

Der Wert der LastWriteTime -Eigenschaft für den neuen Eintrag wird auf die aktuelle Zeit festgelegt. Der Eintrag wird mithilfe der Standardkomprimierungsebene des zugrunde liegenden Komprimierungsalgorithmus komprimiert. Wenn Sie eine andere Komprimierungsebene angeben möchten, verwenden Sie die CreateEntry -Methode.

Gilt für:

CreateEntry(String, CompressionLevel)

Quelle:
ZipArchive.cs
Quelle:
ZipArchive.cs
Quelle:
ZipArchive.cs

Erstellt einen leeren Eintrag, der den angegebenen Eintragsnamen und die Komprimierung im ZIP-Archiv Ebene verwendet.

public:
 System::IO::Compression::ZipArchiveEntry ^ CreateEntry(System::String ^ entryName, System::IO::Compression::CompressionLevel compressionLevel);
public System.IO.Compression.ZipArchiveEntry CreateEntry (string entryName, System.IO.Compression.CompressionLevel compressionLevel);
member this.CreateEntry : string * System.IO.Compression.CompressionLevel -> System.IO.Compression.ZipArchiveEntry
Public Function CreateEntry (entryName As String, compressionLevel As CompressionLevel) As ZipArchiveEntry

Parameter

entryName
String

Ein Pfad relativ zum Stamm des Archivs, der den Namen des Eintrags angibt, der erstellt werden soll.

compressionLevel
CompressionLevel

Einer der Enumerationswerte, der angibt, ob Geschwindigkeit oder Komprimierungseffektivität priorisiert wird, wenn der Eintrag erstellt.

Gibt zurück

Ein leerer Eintrag im ZIP-Archiv.

Ausnahmen

entryName ist Empty.

entryName ist null.

Das ZIP-Archiv unterstützt keine Schreibvorgänge.

Die ZIP-Archiv wurde freigegeben.

Beispiele

Das folgende Beispiel zeigt, wie Sie einen Eintrag mit der optimalen Komprimierungsebene erstellen. Außerdem wird mithilfe eines Datenstroms in den neuen Eintrag geschrieben.

using System;
using System.IO;
using System.IO.Compression;

namespace ConsoleApplication
{
    class Program
    {
        static void Main(string[] args)
        {
            using (FileStream zipToOpen = new FileStream(@"c:\users\exampleuser\release.zip", FileMode.Open))
            {
                using (ZipArchive archive = new ZipArchive(zipToOpen, ZipArchiveMode.Update))
                {
                    ZipArchiveEntry readmeEntry = archive.CreateEntry("Readme.txt", CompressionLevel.Optimal);
                    using (StreamWriter writer = new StreamWriter(readmeEntry.Open()))
                    {
                            writer.WriteLine("Information about this package.");
                            writer.WriteLine("========================");
                    }
                }
            }
        }
    }
}
open System.IO
open System.IO.Compression

do
    use zipToOpen = new FileStream(@"c:\users\exampleuser\release.zip", FileMode.Open)

    use archive = new ZipArchive(zipToOpen, ZipArchiveMode.Update)

    let readmeEntry = archive.CreateEntry("Readme.txt", CompressionLevel.Optimal)
    use writer = new StreamWriter(readmeEntry.Open())

    writer.WriteLine "Information about this package."
    writer.WriteLine "========================"
Imports System.IO
Imports System.IO.Compression

Module Module1

    Sub Main()
        Using zipToOpen As FileStream = New FileStream("c:\users\exampleuser\release.zip", FileMode.Open)
            Using archive As ZipArchive = New ZipArchive(zipToOpen, ZipArchiveMode.Update)
                Dim readmeEntry As ZipArchiveEntry = archive.CreateEntry("Readme.txt", CompressionLevel.Optimal)
                Using writer As StreamWriter = New StreamWriter(readmeEntry.Open())
                    writer.WriteLine("Information about this package.")
                    writer.WriteLine("========================")
                End Using
            End Using
        End Using
    End Sub

End Module

Hinweise

Die entryName Zeichenfolge sollte den relativen Pfad des Eintrags widerspiegeln, den Sie im ZIP-Archiv erstellen möchten. Es gibt keine Einschränkung für die von Ihnen bereitgestellte Zeichenfolge. Wenn er jedoch nicht als relativer Pfad formatiert ist, wird der Eintrag erstellt, aber sie erhalten möglicherweise eine Ausnahme, wenn Sie den Inhalt des ZIP-Archivs extrahieren. Wenn bereits ein Eintrag mit dem angegebenen Namen im Archiv vorhanden ist, wird ein zweiter Eintrag mit demselben Namen erstellt.

Der Wert der LastWriteTime -Eigenschaft für den neuen Eintrag wird auf die aktuelle Zeit festgelegt. Legen Sie den compressionLevel Parameter auf fest Optimal , wenn die Datei so weit wie möglich komprimiert werden soll. Legen Sie den compressionLevel Parameter nur auf fest Fastest , wenn Sie befürchten, dass der Komprimierungsvorgang nicht schnell genug für Ihr Szenario abgeschlossen wird.

Gilt für: