ZipFileExtensions.CreateEntryFromFile Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Archive un fichier en le compressant et en l’ajoutant à l’archive zip.
Surcharges
| Nom | Description |
|---|---|
| CreateEntryFromFile(ZipArchive, String, String) |
Archive un fichier en le compressant et en l’ajoutant à l’archive zip. |
| CreateEntryFromFile(ZipArchive, String, String, CompressionLevel) |
Archive un fichier en le compressant à l’aide du niveau de compression spécifié et en l’ajoutant à l’archive zip. |
CreateEntryFromFile(ZipArchive, String, String)
Archive un fichier en le compressant et en l’ajoutant à l’archive zip.
public:
[System::Runtime::CompilerServices::Extension]
static System::IO::Compression::ZipArchiveEntry ^ CreateEntryFromFile(System::IO::Compression::ZipArchive ^ destination, System::String ^ sourceFileName, System::String ^ entryName);
public static System.IO.Compression.ZipArchiveEntry CreateEntryFromFile(this System.IO.Compression.ZipArchive destination, string sourceFileName, string entryName);
static member CreateEntryFromFile : System.IO.Compression.ZipArchive * string * string -> System.IO.Compression.ZipArchiveEntry
<Extension()>
Public Function CreateEntryFromFile (destination As ZipArchive, sourceFileName As String, entryName As String) As ZipArchiveEntry
Paramètres
- destination
- ZipArchive
Archive zip à laquelle ajouter le fichier.
- sourceFileName
- String
Chemin d’accès au fichier à archiver. Vous pouvez spécifier un chemin relatif ou absolu. Un chemin relatif est interprété comme relatif au répertoire de travail actuel.
- entryName
- String
Nom de l’entrée à créer dans l’archive zip.
Retours
Wrapper pour la nouvelle entrée dans l’archive zip.
Exceptions
sourceFileName est Empty, contient uniquement un espace blanc ou contient au moins un caractère non valide.
- ou -
entryName a la valeur Empty.
sourceFileName ou entryName est null.
Dans sourceFileName, le chemin d’accès spécifié, le nom de fichier ou les deux dépassent la longueur maximale définie par le système.
sourceFileName n’est pas valide (par exemple, il se trouve sur un lecteur non mappé).
Le fichier spécifié par sourceFileName ne peut pas être ouvert ou est trop volumineux pour être mis à jour (la limite actuelle est Int32.MaxValue.
sourceFileName spécifie un répertoire.
- ou -
L’appelant n’a pas l’autorisation requise pour accéder au fichier spécifié par sourceFileName.
Le fichier spécifié par sourceFileName est introuvable.
Le sourceFileName paramètre est dans un format non valide.
- ou -
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 dans une archive zip à partir d’un fichier existant.
using System;
using System.IO;
using System.IO.Compression;
namespace ConsoleApplication
{
class Program
{
static void Main(string[] args)
{
string zipPath = @"c:\users\exampleuser\start.zip";
string extractPath = @"c:\users\exampleuser\extract";
string newFile = @"c:\users\exampleuser\NewFile.txt";
using (ZipArchive archive = ZipFile.Open(zipPath, ZipArchiveMode.Update))
{
archive.CreateEntryFromFile(newFile, "NewEntry.txt");
archive.ExtractToDirectory(extractPath);
}
}
}
}
Imports System.IO
Imports System.IO.Compression
Module Module1
Sub Main()
Dim zipPath As String = "c:\users\exampleuser\end.zip"
Dim extractPath As String = "c:\users\exampleuser\extract"
Dim newFile As String = "c:\users\exampleuser\NewFile.txt"
Using archive As ZipArchive = ZipFile.Open(zipPath, ZipArchiveMode.Update)
archive.CreateEntryFromFile(newFile, "NewEntry.txt", CompressionLevel.Fastest)
archive.ExtractToDirectory(extractPath)
End Using
End Sub
End Module
Remarques
La nouvelle entrée dans l’archive contient le contenu du fichier spécifié par sourceFileName. Si une entrée portant le nom spécifié (entryName) existe déjà dans l’archive, une deuxième entrée est créée avec un nom identique. La LastWriteTime propriété de l’entrée est définie sur la dernière fois que le fichier sur le système de fichiers a été modifié.
Lorsqu’elle ZipArchiveMode.Update est présente, la limite de taille d’une entrée est limitée à Int32.MaxValue. Cette limite est due au fait que le mode de mise à jour utilise un MemoryStream mode de mise à jour interne pour autoriser la recherche requise lors de la mise à jour d’une archive et MemoryStream a un maximum égal à la taille d’un int.
S’applique à
CreateEntryFromFile(ZipArchive, String, String, CompressionLevel)
Archive un fichier en le compressant à l’aide du niveau de compression spécifié et en l’ajoutant à l’archive zip.
public:
[System::Runtime::CompilerServices::Extension]
static System::IO::Compression::ZipArchiveEntry ^ CreateEntryFromFile(System::IO::Compression::ZipArchive ^ destination, System::String ^ sourceFileName, System::String ^ entryName, System::IO::Compression::CompressionLevel compressionLevel);
public static System.IO.Compression.ZipArchiveEntry CreateEntryFromFile(this System.IO.Compression.ZipArchive destination, string sourceFileName, string entryName, System.IO.Compression.CompressionLevel compressionLevel);
static member CreateEntryFromFile : System.IO.Compression.ZipArchive * string * string * System.IO.Compression.CompressionLevel -> System.IO.Compression.ZipArchiveEntry
<Extension()>
Public Function CreateEntryFromFile (destination As ZipArchive, sourceFileName As String, entryName As String, compressionLevel As CompressionLevel) As ZipArchiveEntry
Paramètres
- destination
- ZipArchive
Archive zip à laquelle ajouter le fichier.
- sourceFileName
- String
Chemin d’accès au fichier à archiver. Vous pouvez spécifier un chemin relatif ou absolu. Un chemin relatif est interprété comme relatif au répertoire de travail actuel.
- entryName
- String
Nom de l’entrée à créer dans l’archive zip.
- compressionLevel
- CompressionLevel
Une des valeurs d’énumération qui indique s’il faut mettre en évidence l’efficacité de la vitesse ou de la compression lors de la création de l’entrée.
Retours
Wrapper pour la nouvelle entrée dans l’archive zip.
Exceptions
sourceFileName est Empty, contient uniquement un espace blanc ou contient au moins un caractère non valide.
- ou -
entryName a la valeur Empty.
sourceFileName ou entryName est null.
sourceFileName n’est pas valide (par exemple, il se trouve sur un lecteur non mappé).
Dans sourceFileName, le chemin d’accès spécifié, le nom de fichier ou les deux dépassent la longueur maximale définie par le système.
Le fichier spécifié par sourceFileName ne peut pas être ouvert ou est trop volumineux pour être mis à jour (la limite actuelle est Int32.MaxValue.
sourceFileName spécifie un répertoire.
- ou -
L’appelant n’a pas l’autorisation requise pour accéder au fichier spécifié par sourceFileName.
Le fichier spécifié par sourceFileName est introuvable.
Le sourceFileName paramètre est dans un format non valide.
- ou -
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 dans une archive zip à partir d’un fichier existant et spécifier le niveau de compression.
using System;
using System.IO;
using System.IO.Compression;
namespace ConsoleApplication
{
class Program
{
static void Main(string[] args)
{
string zipPath = @"c:\users\exampleuser\start.zip";
string extractPath = @"c:\users\exampleuser\extract";
string newFile = @"c:\users\exampleuser\NewFile.txt";
using (ZipArchive archive = ZipFile.Open(zipPath, ZipArchiveMode.Update))
{
archive.CreateEntryFromFile(newFile, "NewEntry.txt", CompressionLevel.Fastest);
archive.ExtractToDirectory(extractPath);
}
}
}
}
Imports System.IO
Imports System.IO.Compression
Module Module1
Sub Main()
Dim zipPath As String = "c:\users\exampleuser\end.zip"
Dim extractPath As String = "c:\users\exampleuser\extract"
Dim newFile As String = "c:\users\exampleuser\NewFile.txt"
Using archive As ZipArchive = ZipFile.Open(zipPath, ZipArchiveMode.Update)
archive.CreateEntryFromFile(newFile, "NewEntry.txt", CompressionLevel.Fastest)
archive.ExtractToDirectory(extractPath)
End Using
End Sub
End Module
Remarques
La nouvelle entrée dans l’archive contient le contenu du fichier spécifié par sourceFileName. Si une entrée portant le nom spécifié (entryName) existe déjà dans l’archive, une deuxième entrée est créée avec un nom identique. La LastWriteTime propriété de l’entrée est définie sur la dernière fois que le fichier sur le système de fichiers a été modifié.
Lorsqu’elle ZipArchiveMode.Update est présente, la limite de taille d’une entrée est limitée à Int32.MaxValue. Cette limite est due au fait que le mode de mise à jour utilise un MemoryStream mode de mise à jour interne pour autoriser la recherche requise lors de la mise à jour d’une archive et MemoryStream a un maximum égal à la taille d’un int.