Archive.CreateEntry

CreateEntry(string, string, bool, ArchiveEntrySettings)

Créer une entrée unique dans l’archive.

public ArchiveEntry CreateEntry(string name, string path, bool openImmediately = false, 
    ArchiveEntrySettings newEntrySettings = null)
ParamètreTaperLa description
nameStringLe nom de l’entrée.
pathStringLe nom complet du nouveau fichier ou le nom relatif du fichier à compresser.
openImmediatelyBooleanVrai si ouvrir le fichier immédiatement, sinon ouvrir le fichier lors de l’enregistrement de l’archive.
newEntrySettingsArchiveEntrySettingsParamètres de compression et de cryptage utilisés pour lesArchiveEntry article.

Return_Value

Instance d’entrée de code postal.

Exceptions

exceptioncondition
ArgumentNullExceptionpath est nul.
SecurityExceptionL’appelant n’a pas l’autorisation requise pour accéder.
ArgumentExceptionLepath est vide, ne contient que des espaces blancs ou contient des caractères non valides.
UnauthorizedAccessExceptionAccéder au dossierpath est refusé.
PathTooLongExceptionLe spécifiépath, nom de fichier ou les deux dépassent la longueur maximale définie par le système. Par exemple, sur les plates-formes Windows, les chemins doivent comporter moins de 248 caractères et les noms de fichiers doivent comporter moins de 260 caractères.
NotSupportedExceptionFichier àpath contient deux-points (:) au milieu de la chaîne.

Remarques

Le nom de l’entrée est défini uniquement dansname paramètre. Le nom de fichier fourni danspath Le paramètre n’affecte pas le nom de l’entrée.

Si le fichier est ouvert immédiatement avecopenImmediately paramètre, il devient bloqué jusqu’à ce que l’archive soit enregistrée.

Exemples

using (FileStream zipFile = File.Open("archive.zip", FileMode.Create))
{
    using (var archive = new Archive())
    {
        archive.CreateEntry("data.bin", "file.dat");
        archive.Save(zipFile);
    }
}

Voir également


CreateEntry(string, Stream, ArchiveEntrySettings)

Créer une entrée unique dans l’archive.

public ArchiveEntry CreateEntry(string name, Stream source, 
    ArchiveEntrySettings newEntrySettings = null)
ParamètreTaperLa description
nameStringLe nom de l’entrée.
sourceStreamLe flux d’entrée pour l’entrée.
newEntrySettingsArchiveEntrySettingsParamètres de compression et de cryptage utilisés pour lesArchiveEntry article.

Return_Value

Instance d’entrée de code postal.

Exemples

using (var archive = new Archive(new ArchiveEntrySettings(null, new AesEcryptionSettings("p@s$", EncryptionMethod.AES256))))
{
    archive.CreateEntry("data.bin", new MemoryStream(new byte[] {0x00, 0xFF} ));
    archive.Save("archive.zip");
}

Voir également


CreateEntry(string, FileInfo, bool, ArchiveEntrySettings)

Créer une entrée unique dans l’archive.

public ArchiveEntry CreateEntry(string name, FileInfo fileInfo, bool openImmediately = false, 
    ArchiveEntrySettings newEntrySettings = null)
ParamètreTaperLa description
nameStringLe nom de l’entrée.
fileInfoFileInfoLes métadonnées du fichier à compresser.
openImmediatelyBooleanVrai si ouvrir le fichier immédiatement, sinon ouvrir le fichier lors de l’enregistrement de l’archive.
newEntrySettingsArchiveEntrySettingsParamètres de compression et de cryptage utilisés pour lesArchiveEntry article.

Return_Value

Instance d’entrée de code postal.

Exceptions

exceptioncondition
UnauthorizedAccessExceptionfileInfo est en lecture seule ou est un répertoire.
DirectoryNotFoundExceptionLe chemin spécifié n’est pas valide, par exemple s’il se trouve sur un lecteur non mappé.
IOExceptionLe fichier est déjà ouvert.

Remarques

Le nom de l’entrée est défini uniquement dansname paramètre. Le nom de fichier fourni dansfileInfo Le paramètre n’affecte pas le nom de l’entrée.

Si le fichier est ouvert immédiatement avecopenImmediately paramètre, il devient bloqué jusqu’à ce que l’archive soit enregistrée.

Exemples

Composez une archive avec des entrées cryptées avec différentes méthodes de cryptage et mots de passe chacun.

using (FileStream zipFile = File.Open("archive.zip", FileMode.Create))
{
    FileInfo fi1 = new FileInfo("data1.bin");
    FileInfo fi2 = new FileInfo("data2.bin");
    FileInfo fi3 = new FileInfo("data3.bin");
    using (var archive = new Archive())
    {
        archive.CreateEntry("entry1.bin", fi1, false, new ArchiveEntrySettings(new DeflateCompressionSettings(), new TraditionalEncryptionSettings("pass1")));
        archive.CreateEntry("entry2.bin", fi2, false, new ArchiveEntrySettings(new DeflateCompressionSettings(), new AesEcryptionSettings("pass2", EncryptionMethod.AES128)));
        archive.CreateEntry("entry3.bin", fi3, false, new ArchiveEntrySettings(new DeflateCompressionSettings(), new AesEcryptionSettings("pass3", EncryptionMethod.AES256)));
        archive.Save(zipFile);
    }
}

Voir également


CreateEntry(string, Stream, ArchiveEntrySettings, FileSystemInfo)

Créer une entrée unique dans l’archive.

public ArchiveEntry CreateEntry(string name, Stream source, ArchiveEntrySettings newEntrySettings, 
    FileSystemInfo fileInfo)
ParamètreTaperLa description
nameStringLe nom de l’entrée.
sourceStreamLe flux d’entrée pour l’entrée.
newEntrySettingsArchiveEntrySettingsParamètres de compression et de cryptage utilisés pour lesArchiveEntry article.
fileInfoFileSystemInfoLes métadonnées du fichier ou du dossier à compresser.

Return_Value

Instance d’entrée de code postal.

Exceptions

exceptioncondition
InvalidOperationExceptionLes deuxsource etfileInfo sont nuls ousourceest nul etfileInfo signifie répertoire.

Remarques

Le nom de l’entrée est défini uniquement dansname paramètre. Le nom de fichier fourni dansfileInfo Le paramètre n’affecte pas le nom de l’entrée.

fileInfo peut faire référence àDirectoryInfo si l’entrée est répertoire.

Exemples

Composer une archive avec une entrée cryptée.

using (FileStream zipFile = File.Open("archive.zip", FileMode.Create))
{
    using (var archive = new Archive())
    {
        archive.CreateEntry("entry1.bin", new MemoryStream(new byte[] {0x00, 0xFF} ), new ArchiveEntrySettings(new DeflateCompressionSettings(), new TraditionalEncryptionSettings("pass1")), new FileInfo("data1.bin")); 
        archive.Save(zipFile);
    }
}

Voir également