ZipArchive.CreateEntry Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
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.