Lire en anglais

Partager via


ZipArchive.CreateEntry Méthode

Définition

Crée une entrée vide dans l'archive zip.

Surcharges

CreateEntry(String)

Crée une entrée vide qui porte le chemin d'accès et le nom d'entrée spécifiés dans l'archive zip.

CreateEntry(String, CompressionLevel)

Crée une entrée vide qui porte le nom d'entrée et le niveau de compression spécifiés dans l'archive zip.

CreateEntry(String)

Source:
ZipArchive.cs
Source:
ZipArchive.cs
Source:
ZipArchive.cs

Crée une entrée vide qui porte le chemin d'accès et le nom d'entrée spécifiés dans l'archive zip.

C#
public System.IO.Compression.ZipArchiveEntry CreateEntry (string entryName);

Paramètres

entryName
String

Chemin d'accès, relatif à la racine de l'archive, qui spécifie le nom de l'entrée à créer.

Retours

Entrée vide dans l'archive zip.

Exceptions

entryName a la valeur Empty.

entryName a la valeur null.

L’archive zip ne prend pas en charge l’écriture.

L’archive zip a été supprimée.

Exemples

L’exemple suivant montre comment créer une entrée et y écrire à l’aide d’un flux.

C#
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("========================");
                    }
                }
            }
        }
    }
}

Remarques

La entryName chaîne doit refléter le chemin relatif de l’entrée que vous souhaitez créer dans l’archive zip. Il n’existe aucune restriction sur la chaîne que vous fournissez. Toutefois, si elle n’est pas mise en forme en tant que chemin d’accès relatif, l’entrée est créée, mais vous pouvez obtenir une exception lorsque vous extrayez le contenu de l’archive zip. Si une entrée avec le chemin et le nom spécifiés existe déjà dans l’archive, une deuxième entrée est créée avec le même chemin et le même nom.

La valeur de la LastWriteTime propriété pour la nouvelle entrée est définie sur l’heure actuelle. L’entrée est compressée à l’aide du niveau de compression par défaut de l’algorithme de compression sous-jacent. Si vous souhaitez spécifier un autre niveau de compression, utilisez la CreateEntry méthode .

S’applique à

.NET 9 et autres versions
Produit Versions
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

CreateEntry(String, CompressionLevel)

Source:
ZipArchive.cs
Source:
ZipArchive.cs
Source:
ZipArchive.cs

Crée une entrée vide qui porte le nom d'entrée et le niveau de compression spécifiés dans l'archive zip.

C#
public System.IO.Compression.ZipArchiveEntry CreateEntry (string entryName, System.IO.Compression.CompressionLevel compressionLevel);

Paramètres

entryName
String

Chemin d'accès, relatif à la racine de l'archive, qui spécifie le nom de l'entrée à créer.

compressionLevel
CompressionLevel

L'une des valeurs d'énumération qui indique s'il faut mettre l'accent sur rapidité ou la compression en créant l'entrée.

Retours

Entrée vide dans l'archive zip.

Exceptions

entryName a la valeur Empty.

entryName a la valeur null.

L’archive zip ne prend pas en charge l’écriture.

L’archive zip a été supprimée.

Exemples

L’exemple suivant montre comment créer une entrée avec le niveau de compression optimal. Il écrit également dans la nouvelle entrée à l’aide d’un flux.

C#
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("========================");
                    }
                }
            }
        }
    }
}

Remarques

La entryName chaîne doit refléter le chemin relatif de l’entrée que vous souhaitez créer dans l’archive zip. Il n’existe aucune restriction sur la chaîne que vous fournissez. Toutefois, si elle n’est pas mise en forme en tant que chemin d’accès relatif, l’entrée est créée, mais vous pouvez obtenir une exception lorsque vous extrayez le contenu de l’archive zip. Si une entrée portant le nom spécifié existe déjà dans l’archive, une deuxième entrée est créée avec le même nom.

La valeur de la LastWriteTime propriété pour la nouvelle entrée est définie sur l’heure actuelle. Définissez le compressionLevel paramètre Optimal sur si vous souhaitez que le fichier soit compressé autant que possible. Définissez le paramètre Fastest sur compressionLevel uniquement si vous craignez que l’opération de compression ne se termine pas assez rapidement pour votre scénario.

S’applique à

.NET 9 et autres versions
Produit Versions
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0