SevenZipArchive.CreateEntry

CreateEntry(string, FileInfo, bool, SevenZipEntrySettings)

Crea una singola voce all’interno dell’archivio.

public SevenZipArchiveEntry CreateEntry(string name, FileInfo fileInfo, 
    bool openImmediately = false, SevenZipEntrySettings newEntrySettings = null)
ParametroTipoDescrizione
nameStringIl nome della voce.
fileInfoFileInfoI metadati del file da comprimere.
openImmediatelyBooleanVero se apri il file immediatamente, altrimenti apri il file al salvataggio in archivio.
newEntrySettingsSevenZipEntrySettingsImpostazioni di compressione e crittografia utilizzate per l’aggiuntaSevenZipArchiveEntry articolo.

Valore di ritorno

Istanza di ingresso Seven Zip.

Eccezioni

eccezionecondizione
UnauthorizedAccessExceptionfileInfo è di sola lettura o è una directory.
DirectoryNotFoundExceptionIl percorso specificato non è valido, ad esempio si trova su un’unità non mappata.
IOExceptionIl file è già aperto.

Osservazioni

Il nome della voce è impostato esclusivamente all’internoname parametro. Il nome del file fornito infileInfo parametro non influisce sul nome della voce.

Se il file viene aperto immediatamente conopenImmediately parametro diventa bloccato fino al salvataggio dell’archivio.

Esempi

Componi archivio con voci crittografate con password diverse ciascuna.

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);
    }
}

Guarda anche


CreateEntry(string, Stream, SevenZipEntrySettings, FileSystemInfo)

Crea una singola voce all’interno dell’archivio.

public SevenZipArchiveEntry CreateEntry(string name, Stream source, 
    SevenZipEntrySettings newEntrySettings, FileSystemInfo fileInfo)
ParametroTipoDescrizione
nameStringIl nome della voce.
sourceStreamIl flusso di input per la voce.
newEntrySettingsSevenZipEntrySettingsImpostazioni di compressione e crittografia utilizzate per l’aggiuntaSevenZipArchiveEntry articolo.
fileInfoFileSystemInfoI metadati del file o della cartella da comprimere.

Valore di ritorno

Istanza di ingresso SevenZip.

Eccezioni

eccezionecondizione
InvalidOperationExceptionEntrambisource EfileInfo sono nulli osourceè nullo efileInfo sta per directory.

Osservazioni

Il nome della voce è impostato esclusivamente all’internoname parametro. Il nome del file fornito infileInfo parametro non influisce sul nome della voce.

fileInfo può fare riferimento aDirectoryInfo se la voce è directory.

Esempi

Componi l’archivio con la voce crittografata compressa 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);
    }
}

Guarda anche


CreateEntry(string, Stream, SevenZipEntrySettings)

Crea una singola voce all’interno dell’archivio.

public SevenZipArchiveEntry CreateEntry(string name, Stream source, 
    SevenZipEntrySettings newEntrySettings = null)
ParametroTipoDescrizione
nameStringIl nome della voce.
sourceStreamIl flusso di input per la voce.
newEntrySettingsSevenZipEntrySettingsImpostazioni di compressione e crittografia utilizzate per l’aggiuntaSevenZipArchiveEntry articolo.

Valore di ritorno

Istanza di ingresso zip.

Esempi

Componi un archivio 7z con compressione LZMA2 e crittografia di tutte le voci.

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");
}

Guarda anche


CreateEntry(string, string, bool, SevenZipEntrySettings)

Crea una singola voce all’interno dell’archivio.

public SevenZipArchiveEntry CreateEntry(string name, string path, bool openImmediately = false, 
    SevenZipEntrySettings newEntrySettings = null)
ParametroTipoDescrizione
nameStringIl nome della voce.
pathStringIl nome completo del nuovo file o il relativo nome del file da comprimere.
openImmediatelyBooleanVero se apri il file immediatamente, altrimenti apri il file al salvataggio in archivio.
newEntrySettingsSevenZipEntrySettingsImpostazioni di compressione e crittografia utilizzate per l’aggiuntaSevenZipArchiveEntry articolo.

Valore di ritorno

Istanza di ingresso zip.

Eccezioni

eccezionecondizione
ArgumentNullExceptionpath è zero.
SecurityExceptionIl chiamante non dispone dell’autorizzazione richiesta per l’accesso.
ArgumentExceptionILpath è vuoto, contiene solo spazi bianchi o contiene caratteri non validi.
UnauthorizedAccessExceptionAccesso all’archiviopath è negato.
PathTooLongExceptionIl specificatopath, nome file o entrambi superano la lunghezza massima definita dal sistema. Ad esempio, su piattaforme basate su Windows, i percorsi devono contenere meno di 248 caratteri ei nomi file devono contenere meno di 260 caratteri.
NotSupportedExceptionFile apath contiene i due punti (:) al centro della stringa.

Osservazioni

Il nome della voce è impostato esclusivamente all’internoname parametro. Il nome del file fornito inpath parametro non influisce sul nome della voce.

Se il file viene aperto immediatamente conopenImmediately parametro diventa bloccato fino al salvataggio dell’archivio.

Esempi

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);
    }
}

Guarda anche