ZipArchive.CreateEntry Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Skapar en tom post i zip-arkivet.
Överlagringar
| Name | Description |
|---|---|
| CreateEntry(String) |
Skapar en tom post som har den angivna sökvägen och postnamnet i zip-arkivet. |
| CreateEntry(String, CompressionLevel) |
Skapar en tom post som har det angivna postnamnet och komprimeringsnivån i zip-arkivet. |
CreateEntry(String)
- Källa:
- ZipArchive.cs
- Källa:
- ZipArchive.cs
- Källa:
- ZipArchive.cs
- Källa:
- ZipArchive.cs
- Källa:
- ZipArchive.cs
Skapar en tom post som har den angivna sökvägen och postnamnet i zip-arkivet.
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
Parametrar
- entryName
- String
En sökväg i förhållande till roten i arkivet som anger namnet på posten som ska skapas.
Returer
En tom post i zip-arkivet.
Undantag
entryName är Empty.
entryName är null.
Zip-arkivet stöder inte skrivning.
Zip-arkivet har tagits bort.
Exempel
I följande exempel visas hur du skapar en post och skriver till den med hjälp av en dataström.
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
Kommentarer
Strängen entryName bör återspegla den relativa sökvägen för den post som du vill skapa i zip-arkivet. Det finns ingen begränsning för strängen som du anger. Men om den inte är formaterad som en relativ sökväg skapas posten, men du kan få ett undantag när du extraherar innehållet i zip-arkivet. Om det redan finns en post med den angivna sökvägen och namnet i arkivet skapas en andra post med samma sökväg och namn.
Värdet för egenskapen LastWriteTime för den nya posten anges till aktuell tid. Posten komprimeras med standardkomprimeringsnivån för den underliggande komprimeringsalgoritmen. Om du vill ange en annan komprimeringsnivå använder du CreateEntry metoden.
Gäller för
CreateEntry(String, CompressionLevel)
- Källa:
- ZipArchive.cs
- Källa:
- ZipArchive.cs
- Källa:
- ZipArchive.cs
- Källa:
- ZipArchive.cs
- Källa:
- ZipArchive.cs
Skapar en tom post som har det angivna postnamnet och komprimeringsnivån i zip-arkivet.
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
Parametrar
- entryName
- String
En sökväg i förhållande till roten i arkivet som anger namnet på posten som ska skapas.
- compressionLevel
- CompressionLevel
Ett av uppräkningsvärdena som anger om hastighets- eller komprimeringseffektivitet ska betonas när posten skapas.
Returer
En tom post i zip-arkivet.
Undantag
entryName är Empty.
entryName är null.
Zip-arkivet stöder inte skrivning.
Zip-arkivet har tagits bort.
Exempel
I följande exempel visas hur du skapar en post med den optimala komprimeringsnivån. Den skriver också till den nya posten med hjälp av en dataström.
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
Kommentarer
Strängen entryName bör återspegla den relativa sökvägen för den post som du vill skapa i zip-arkivet. Det finns ingen begränsning för strängen som du anger. Men om den inte är formaterad som en relativ sökväg skapas posten, men du kan få ett undantag när du extraherar innehållet i zip-arkivet. Om det redan finns en post med det angivna namnet i arkivet skapas en andra post med samma namn.
Värdet för egenskapen LastWriteTime för den nya posten anges till aktuell tid. Ange parametern compressionLevel till Optimal om du vill att filen ska komprimeras så mycket som möjligt. Ange parametern compressionLevel till Fastest endast om du är orolig för att komprimeringsåtgärden inte kommer att slutföras tillräckligt snabbt för ditt scenario.