ZipArchive.CreateEntry Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Crea una entrada vacía en el archivo zip.
Sobrecargas
CreateEntry(String) |
Crea una entrada vacía en el archivo zip con la ruta de acceso y el nombre de entrada especificados. |
CreateEntry(String, CompressionLevel) |
Crea una entrada vacía en el archivo zip con el nombre de entrada y el nivel de compresión especificados. |
CreateEntry(String)
- Source:
- ZipArchive.cs
- Source:
- ZipArchive.cs
- Source:
- ZipArchive.cs
Crea una entrada vacía en el archivo zip con la ruta de acceso y el nombre de entrada especificados.
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
Parámetros
- entryName
- String
Ruta de acceso, relativa a la raíz del archivo, que especifica el nombre de la entrada que se va a crear.
Devoluciones
Una entrada vacía en el archivo zip.
Excepciones
entryName
es Empty.
entryName
es null
.
El archivo zip no admite escritura.
El archivo .zip se ha desechado.
Ejemplos
En el ejemplo siguiente se muestra cómo crear una entrada y escribir en ella mediante una secuencia.
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
Comentarios
La entryName
cadena debe reflejar la ruta de acceso relativa de la entrada que desea crear en el archivo ZIP. No hay ninguna restricción en la cadena que proporcione. Sin embargo, si no tiene el formato de ruta de acceso relativa, se crea la entrada, pero puede obtener una excepción al extraer el contenido del archivo ZIP. Si ya existe una entrada con la ruta de acceso y el nombre especificados en el archivo, se crea una segunda entrada con la misma ruta de acceso y nombre.
El valor de la LastWriteTime propiedad para la nueva entrada se establece en la hora actual. La entrada se comprime mediante el nivel de compresión predeterminado del algoritmo de compresión subyacente. Si desea especificar un nivel de compresión diferente, use el CreateEntry método .
Se aplica a
CreateEntry(String, CompressionLevel)
- Source:
- ZipArchive.cs
- Source:
- ZipArchive.cs
- Source:
- ZipArchive.cs
Crea una entrada vacía en el archivo zip con el nombre de entrada y el nivel de compresión especificados.
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
Parámetros
- entryName
- String
Ruta de acceso, relativa a la raíz del archivo, que especifica el nombre de la entrada que se va a crear.
- compressionLevel
- CompressionLevel
Uno de los valores de enumeración que indica si se va a hacer hincapié en la eficacia de velocidad o de compresión al crear la entrada.
Devoluciones
Una entrada vacía en el archivo zip.
Excepciones
entryName
es Empty.
entryName
es null
.
El archivo zip no admite escritura.
El archivo .zip se ha desechado.
Ejemplos
En el ejemplo siguiente se muestra cómo crear una entrada con el nivel de compresión óptimo. También escribe en la nueva entrada mediante una secuencia.
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
Comentarios
La entryName
cadena debe reflejar la ruta de acceso relativa de la entrada que desea crear en el archivo ZIP. No hay ninguna restricción en la cadena que proporcione. Sin embargo, si no tiene el formato de ruta de acceso relativa, se crea la entrada, pero puede obtener una excepción al extraer el contenido del archivo ZIP. Si ya existe una entrada con el nombre especificado en el archivo, se crea una segunda entrada con el mismo nombre.
El valor de la LastWriteTime propiedad para la nueva entrada se establece en la hora actual. Establezca el compressionLevel
parámetro Optimal en si desea que el archivo se comprima tanto como sea posible. Establezca el compressionLevel
parámetro Fastest en solo si le preocupa que la operación de compresión no se complete lo suficientemente rápido para su escenario.