SevenZipArchive.CreateEntry

CreateEntry(string, FileInfo, bool, SevenZipEntrySettings)

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

public SevenZipArchiveEntry CreateEntry(string name, FileInfo fileInfo, 
    bool openImmediately = false, SevenZipEntrySettings 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.
newEntrySettingsSevenZipEntrySettingsParamètres de compression et de cryptage utilisés pour lesSevenZipArchiveEntry article.

Return_Value

Instance d’entrée Seven Zip.

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 des mots de passe différents chacune.

using (FileStream sevenZipFile = File.Open("archive.7z", FileMode.Create))
{
    FileInfo fi1 = new FileInfo("data1.bin");
    FileInfo fi2 = new FileInfo("data2.bin");
    FileInfo fi3 = new FileInfo("data3.bin");
    using (var archive = new SevenZipArchive())
    {
        archive.CreateEntry("entry1.bin", fi1, false, new SevenZipEntrySettings(new SevenZipStoreCompressionSettings(), new SevenZipAESEncryptionSettings("test1")));
        archive.CreateEntry("entry2.bin", fi2, false, new SevenZipEntrySettings(new SevenZipStoreCompressionSettings(), new SevenZipAESEncryptionSettings("test2")));
        archive.CreateEntry("entry3.bin", fi3, false, new SevenZipEntrySettings(new SevenZipStoreCompressionSettings(), new SevenZipAESEncryptionSettings("test3")));
        archive.Save(sevenZipFile);
    }
}

Voir également


CreateEntry(string, Stream, SevenZipEntrySettings, FileSystemInfo)

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

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

Return_Value

Instance d’entrée SevenZip.

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 compressée LZMA2.

using (FileStream sevenZipFile = File.Open("archive.7z", FileMode.Create))
{
    using (var archive = new SevenZipArchive())
    {
        archive.CreateEntry("entry1.bin", new MemoryStream(new byte[] {0x00, 0xFF}), new SevenZipEntrySettings(new SevenZipLZMA2CompressionSettings(), new SevenZipAESEncryptionSettings("test1")), new FileInfo("data1.bin")); 
        archive.Save(sevenZipFile);
    }
}

Voir également


CreateEntry(string, Stream, SevenZipEntrySettings)

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

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

Return_Value

Instance d’entrée de code postal.

Exemples

Composez une archive 7z avec compression LZMA2 et cryptage de toutes les entrées.

using (var archive = new SevenZipArchive(new SevenZipEntrySettings(new SevenZipLZMA2CompressionSettings(), new SevenZipAESEncryptionSettings("p@s$"))))
{
    archive.CreateEntry("data.bin", new MemoryStream(new byte[] {0x00, 0xFF} ));
    archive.Save("archive.7z");
}

Voir également


CreateEntry(string, string, bool, SevenZipEntrySettings)

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

public SevenZipArchiveEntry CreateEntry(string name, string path, bool openImmediately = false, 
    SevenZipEntrySettings 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.
newEntrySettingsSevenZipEntrySettingsParamètres de compression et de cryptage utilisés pour lesSevenZipArchiveEntry 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 sevenZipFile = File.Open("archive.7z", FileMode.Create))
{
    using (var archive = new SevenZipArchive(new SevenZipEntrySettings(new SevenZipLZMA2CompressionSettings())))
    {
        archive.CreateEntry("data.bin", "file.dat");
        archive.Save(sevenZipFile);
    }
}

Voir également