Class SevenZipArchive
A név: Aspose.Zip.SevenZip Összefoglaló: Aspose.Zip.dll (25.5.0)
Ez az osztály a 7z archív fájlt képviseli. használja a 7z archívumok összeállításához és kivonásához.
public class SevenZipArchive : IArchive, IDisposable
Inheritance
Implements
Örökletes tagok
object.GetType() , object.MemberwiseClone() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()
Constructors
SevenZipArchive(SevenZipEntrySettings)
Kezdődik az Aspose.Zip.SevenZip.SevenZipArchive osztály egy új példája a bejegyzések opcionális beállításaival.
public SevenZipArchive(SevenZipEntrySettings newEntrySettings = null)
Parameters
newEntrySettings
SevenZipEntrySettings
Kompresszió és titkosítási beállítások használt az újonnan hozzáadott Aspose.Zip.SevenZip.SevenZipArchiveEntry elemeket.Ha nem szerepel, akkor az LZMA tömörítés titkosítás nélkül használható.
Examples
Az alábbi példa azt mutatja, hogyan kell tömöríteni egy egyes fájlt az alapértelmezett beállításokkal: LZMA-kompresszió titkosítás nélkül.
using (FileStream sevenZipFile = File.Open("archive.7z", FileMode.Create))
{
using (var archive = new SevenZipArchive())
{
archive.CreateEntry("data.bin", "file.dat");
archive.Save(sevenZipFile);
}
}
SevenZipArchive(Áramlás, string)
Kezdeményez egy új példát az Aspose.Zip.SevenZip.SevenZipArchive osztály és készíti a bejegyzési listát lehet kivonni az archívumból.
public SevenZipArchive(Stream sourceStream, string password = null)
Parameters
sourceStream
Stream
Az archívum forrása.
password
string
Opcionális jelszó a dekódoláshoz. ha a fájlnevek titkosítva vannak, akkor jelen kell lennie.
Examples
using (SevenZipArchive archive = new SevenZipArchive(File.OpenRead("archive.7z")))
{
archive.ExtractToDirectory("C:\\extracted");
}
Remarks
Ez az építő nem dekompresszi a bejegyzést. lásd Aspose.Zip.SevenZip.SevenZipArchive.ExtractToDirectory(System.String,System.String) dekompressziós módszer.
Exceptions
sourceStream’ is not seekable.
sourceStream’ is null.
Az archívum több mint egy kódoló. most csak LZMA tömörítés támogatott.
SevenZipArchive(A string, a string)
Kezdeményez egy új példát az Aspose.Zip.SevenZip.SevenZipArchive osztály és készíti a bejegyzési listát lehet kivonni az archívumból.
public SevenZipArchive(string path, string password = null)
Parameters
path
string
A teljes mértékben képzett vagy relatív út az archív fájlhoz.
password
string
Opcionális jelszó a dekódoláshoz. ha a fájlnevek titkosítva vannak, akkor jelen kell lennie.
Examples
using (SevenZipArchive archive = new SevenZipArchive("archive.7z"))
{
archive.ExtractToDirectory("C:\\extracted");
}
Remarks
Ez az építő nem dekompresszi a bejegyzést. lásd Aspose.Zip.SevenZip.SevenZipArchive.ExtractToDirectory(System.String,System.String) dekompressziós módszer.
Exceptions
path’ is null.
A hívó nem rendelkezik a szükséges hozzáférési engedélygel.
A path" üres, csak fehér helyeket tartalmaz, vagy nem érvényes karaktereket tartalmaz.
A path" fájlhoz való hozzáférés elutasításra kerül.
A meghatározott path", fájlnév, vagy mindkettő meghaladja a rendszer által meghatározott maximális hosszúságot. Például a Windows-alapú platformokon az útvonalnak kevesebbnek kell lennie, mint 248 karakter, és a fájlnévnek kevesebbnek kell lennie, mint 260 karakter.
A path’ fájl tartalmaz egy oszlopot (:) a sor közepén.
A fájlt nem találták meg.
A kijelölt út nem érvényes, például egy mappátlan vezérlésen.
A fájl már nyitva van.
SevenZipArchive(A string[], A string)
Kezdeményez egy új példát az Aspose.Zip.SevenZip.SevenZipArchive osztály a multi-volume 7z archívum és összetétele egy bejegyzés listát lehet kivonni az archívumból.
public SevenZipArchive(string[] parts, string password = null)
Parameters
parts
string
[]
Lépések minden szegmens multi-volume 7z archív tiszteletben tartja a rendet
password
string
Opcionális jelszó a dekódoláshoz. ha a fájlnevek titkosítva vannak, akkor jelen kell lennie.
Examples
using (SevenZipArchive archive = new SevenZipArchive(new string[] { "multi.7z.001", "multi.7z.002", "multi.7z.003" }))
{
archive.ExtractToDirectory("C:\\extracted");
}
Exceptions
parts’ is null.
parts’ has no entries.
A hívó nem rendelkezik a szükséges hozzáférési engedélygel.
A fájlhoz vezető út üres, csak fehér helyeket tartalmaz, vagy nem érvényes karaktereket tartalmaz.
A fájlhoz való hozzáférés megtagadható.
A meghatározott útvonal egy részre, fájlnévre vagy mindkettőre meghaladja a rendszer által meghatározott maximális hosszúságot. Például a Windows-alapú platformokon az útvonalnak kevesebbnek kell lennie, mint 248 karakter, és a fájlnévnek kevesebbnek kell lennie, mint 260 karakter.
Az útvonalon lévő fájl tartalmaz egy oszlopot (:) a szalag közepén.
Properties
Entries
Kap bejegyzéseit Aspose.Zip.SevenZip.SevenZipArchiveEntry típus alkotja az archívumot.
public ReadOnlyCollection<sevenziparchiveentry> Entries { get; }
ingatlan értéke
ReadOnlyCollection < SevenZipArchiveEntry >
NewEntrySettings
Kompresszió és titkosítási beállítások használt az újonnan hozzáadott Aspose.Zip.SevenZip.SevenZipArchiveEntry elemeket.
public SevenZipEntrySettings NewEntrySettings { get; }
ingatlan értéke
Methods
CreateEntries(Részletesebben Bool, Bool)
Hozzáadja az archívumhoz az összes fájlt és címkéket az adott címkében ismétlődően.
public SevenZipArchive CreateEntries(DirectoryInfo directory, bool includeRootDirectory = true)
Parameters
directory
DirectoryInfo
A kompressziós kézikönyv.
includeRootDirectory
bool
Megmutatja, hogy magában foglalja-e a gyökérdirektorát vagy sem.
Returns
Az archívum összetett bejegyzésekkel rendelkezik.
Examples
using (SevenZipArchive archive = new SevenZipArchive())
{
DirectoryInfo folder = new DirectoryInfo("C:\folder");
archive.CreateEntries(folder);
archive.Save("folder.7z");
}
Exceptions
A directory" útvonal nem érvényes, például nem térképezett lemezre.
A hívó nem rendelkezik a directory’hoz való hozzáféréshez szükséges engedélygel.
CreateEntries(Szilveszter, Bool)
Hozzáadja az archívumhoz az összes fájlt és címkéket az adott címkében ismétlődően.
public SevenZipArchive CreateEntries(string sourceDirectory, bool includeRootDirectory = true)
Parameters
sourceDirectory
string
A kompressziós kézikönyv.
includeRootDirectory
bool
Megmutatja, hogy magában foglalja-e a gyökérdirektorát vagy sem.
Returns
Az archívum összetett bejegyzésekkel rendelkezik.
Examples
Összetett 7z archívum LZMA2 tömörítéssel.
using (SevenZipArchive archive = new SevenZipArchive(new SevenZipEntrySettings(new SevenZipLZMACompressionSettings())))
{
archive.CreateEntries("C:\folder");
archive.Save("folder.7z");
}
CreateEntry(szalag, FileInfo, bool, SevenZipEntrySettings)
Hozzon létre egy egységes bejegyzést az archívumban.
public SevenZipArchiveEntry CreateEntry(string name, FileInfo fileInfo, bool openImmediately = false, SevenZipEntrySettings newEntrySettings = null)
Parameters
name
string
A bejárat neve.
fileInfo
FileInfo
A fájl metadata nyomtatásra kerül.
openImmediately
bool
Igaz, ha azonnal megnyitja a fájlt, különben megnyitja a fájlt az archív mentés.
newEntrySettings
SevenZipEntrySettings
Kompresszió és titkosítási beállítások használt hozzáadott Aspose.Zip.SevenZip.SevenZipArchiveEntry elem.
Returns
Hét Zip bejárat.
Examples
Készítsen archívumot a különböző jelszavakkal titkosított bejegyzésekkel.
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);
}
}
Remarks
A paraméterben megadott fájl neve nem befolyásolja a bejegyzés nevét.
Ha a fájl azonnal megnyílik a paraméterrel, akkor az archívum mentéséig blokkolódik.
Exceptions
fileInfo’ is read-only or is a directory.
A kijelölt út nem érvényes, például egy mappátlan vezérlésen.
A fájl már nyitva van.
CreateEntry(szalag, Stream, SevenZipEntrySettings, FileSystemInfo)
Hozzon létre egy egységes bejegyzést az archívumban.
public SevenZipArchiveEntry CreateEntry(string name, Stream source, SevenZipEntrySettings newEntrySettings, FileSystemInfo fileInfo)
Parameters
name
string
A bejárat neve.
source
Stream
A belépési áram a belépéshez.
newEntrySettings
SevenZipEntrySettings
Kompresszió és titkosítási beállítások használt hozzáadott Aspose.Zip.SevenZip.SevenZipArchiveEntry elem.
fileInfo
FileSystemInfo
A fájl vagy a mappa metadata nyomtatásra kerül.
Returns
A 7Zip bejárati beállítása.
Examples
Készítsen archívumot az LZMA2 tömörített titkosított bejegyzéssel.
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);
}
}
Remarks
A paraméterben megadott fájl neve nem befolyásolja a bejegyzés nevét.
lehet hivatkozni a System.IO.DirectoryInfo, ha a bejegyzés a címkével.
Exceptions
Mind a source’ és a
fileInfo’ null vagy a
source’ null, és a
fileInfo’ a címkéhez tartozik.
CreateEntry(szalag, Stream, SevenZipEntrySettings)
Hozzon létre egy egységes bejegyzést az archívumban.
public SevenZipArchiveEntry CreateEntry(string name, Stream source, SevenZipEntrySettings newEntrySettings = null)
Parameters
name
string
A bejárat neve.
source
Stream
A belépési áram a belépéshez.
newEntrySettings
SevenZipEntrySettings
Kompresszió és titkosítási beállítások használt hozzáadott Aspose.Zip.SevenZip.SevenZipArchiveEntry elem.
Returns
Zip bejárati eljárás.
Examples
Összetétel 7z archívum LZMA2 tömörítés és titkosítás minden bejegyzés.
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");
}
CreateEntry(szalag, szalag, bool, SevenZipEntrySettings)
Hozzon létre egy egységes bejegyzést az archívumban.
public SevenZipArchiveEntry CreateEntry(string name, string path, bool openImmediately = false, SevenZipEntrySettings newEntrySettings = null)
Parameters
name
string
A bejárat neve.
path
string
Az új fájl teljes körű elszámoltathatósága, vagy az összehasonlító fájl neve.
openImmediately
bool
Igaz, ha azonnal megnyitja a fájlt, különben megnyitja a fájlt az archív mentés.
newEntrySettings
SevenZipEntrySettings
Kompresszió és titkosítási beállítások használt hozzáadott Aspose.Zip.SevenZip.SevenZipArchiveEntry elem.
Returns
Zip bejárati eljárás.
Examples
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);
}
}
Remarks
A paraméterben megadott fájl neve nem befolyásolja a bejegyzés nevét.
Ha a fájl azonnal megnyílik a paraméterrel, akkor az archívum mentéséig blokkolódik.
Exceptions
path’ is null.
A hívó nem rendelkezik a szükséges hozzáférési engedélygel.
A path" üres, csak fehér helyeket tartalmaz, vagy nem érvényes karaktereket tartalmaz.
A path" fájlhoz való hozzáférés elutasításra kerül.
A meghatározott path", fájlnév, vagy mindkettő meghaladja a rendszer által meghatározott maximális hosszúságot. Például a Windows-alapú platformokon az útvonalnak kevesebbnek kell lennie, mint 248 karakter, és a fájlnévnek kevesebbnek kell lennie, mint 260 karakter.
A path’ fájl tartalmaz egy oszlopot (:) a sor közepén.
Dispose()
Alkalmazás-meghatározott feladatokat végez, amelyek a nem kezelt erőforrások felszabadításával, felszabadításával vagy újrahasznosításával kapcsolatosak.
public void Dispose()
Dispose(Bóli)
Alkalmazás-meghatározott feladatokat végez, amelyek a nem kezelt erőforrások felszabadításával, felszabadításával vagy újrahasznosításával kapcsolatosak.
protected virtual void Dispose(bool disposing)
Parameters
disposing
bool
A kezelt erőforrások megszüntetésére van szükség.
ExtractToDirectory(A string, a string)
Az archívumban lévő összes fájlt a megadott katalógusba kell kivonni.
public void ExtractToDirectory(string destinationDirectory, string password = null)
Parameters
destinationDirectory
string
Az út a címkéhez, hogy a kivont fájlokat helyezze el.
password
string
Opcionális jelszó a tartalom dekódolásához.
Examples
using (var archive = new SevenZipArchive("archive.7z"))
{
archive.ExtractToDirectory("C:\extracted");
}
Remarks
Ha a katalógus nem létezik, akkor létre kell hozni.
Ha a fájlnéveket titkosítják, adja meg a jelszót a Aspose.Zip.SevenZop.Negyedik ZipArchive.#ctor(System.String,Systems. String) vagy a www.Wl51.Tyededik zip-archivum.
Exceptions
destinationDirectory’ is null.
A meghatározott útvonal, a fájl neve vagy mindkettő meghaladja a rendszer által meghatározott maximális hosszúságot. Például a Windows-alapú platformokon az útvonalaknak kevesebbnek kell lenniük, mint 248 karakter, és a fájlneveknek kevesebbnek kell lenniük, mint 260 karakter.
A hívó nem rendelkezik a meglévő címkéhez való hozzáféréshez szükséges engedéllyel.
Ha a kézikönyv nem létezik, az útvonal tartalmaz egy csomópont karaktert (:) amely nem része a lemez címkéjének (“C:”).
destinationDirectory’ is a zero-length string, contains only white space, or contains one or more invalid characters. You can query for invalid characters by using the System.IO.Path.GetInvalidPathChars method. -or- path is prefixed with, or contains, only a colon character (:).
Az útvonal által meghatározott kézikönyv egy fájl. -or- A hálózati név nem ismert.
Az archívum korrupt.
Save(Stream)
Megtakarítja a 7z archívumot a rendelkezésre álló áramláshoz.
public void Save(Stream output)
Parameters
output
Stream
A cél áramlása.
Examples
using (FileStream sevenZipFile = File.Open("archive.7z", FileMode.Create))
{
using (FileStream source = File.Open("data.bin", FileMode.Open, FileAccess.Read))
{
using (var archive = new SevenZipArchive())
{
archive.CreateEntry("data", source);
archive.Save(sevenZipFile);
}
}
}
Remarks
kereshetőnek kell lennie.
Exceptions
output’ does not support seeking.
output’ is null.
A kódoló nem tudta komprimálni az adatokat.
Save(A string)
Adja meg az archívumot a megadott célfájlra.
public void Save(string destinationFileName)
Parameters
destinationFileName
string
Ha a megadott fájl neve megjelöli a meglévő fájlt, átírásra kerül.
Examples
using (FileStream source = File.Open("data.bin", FileMode.Open, FileAccess.Read))
{
using (var archive = new SevenZipArchive(new SevenZipEntrySettings(new SevenZipLZMACompressionSettings())))
{
archive.CreateEntry("data", source);
archive.Save("archive.7z");
}
}
Remarks
Az archívumot ugyanolyan úton lehet menteni, mint amilyenről letöltött. azonban ez nem ajánlott, mert ez a megközelítés egy ideiglenes fájlra másolja.
Exceptions
destinationFileName’ is null.
A hívó nem rendelkezik a szükséges hozzáférési engedélygel.
A destinationFileName’ üres, csak fehér helyeket tartalmaz, vagy nem érvényes karaktereket tartalmaz.
A destinationFileName" fájlhoz való hozzáférést elutasítják.
A meghatározott destinationFileName’, fájlnév, vagy mindkettő meghaladja a rendszer által meghatározott maximális hosszúságot. Például a Windows-alapú platformokon az útvonalnak kevesebbnek kell lennie, mint 248 karakter, és a fájlnévnek kevesebbnek kell lennie, mint 260 karakter.
A destinationFileName’ fájl tartalmaz egy oszlopot (:) a sor közepén.
SaveSplit(szál, SplitSevenZipArchiveSaveOptions)
Megtakarítja a multi-volume archívumot a megadott rendeltetési címkéhez.
public void SaveSplit(string destinationDirectory, SplitSevenZipArchiveSaveOptions options)
Parameters
destinationDirectory
string
Az út a címkéhez, ahol az archív szegmenseket kell létrehozni.
options
SplitSevenZipArchiveSaveOptions
Az archív tárolási lehetőségek, beleértve a fájlnevét is.
Examples
using (SevenZipArchive archive = new SevenZipArchive())
{
archive.CreateEntry("entry.bin", "data.bin");
archive.SaveSplit(@"C:\Folder", new SplitSevenZipArchiveSaveOptions("volume", 65536));
}
Remarks
Ez a módszer több () fájlt tartalmaz filename.7z.001, filename.7z.002, …, filename.7z.(n).
Nem lehet meglévő archívum multi-volume.
Exceptions
Ez az archívum a meglévő forrásból nyílik meg.
destinationDirectory’ is null.
A hívó nem rendelkezik a szükséges hozzáférési engedéllyel a címkéhez.
destinationDirectory’ contains invalid characters such as “, >, <, or |.
A meghatározott útvonal meghaladja a rendszer által meghatározott maximális hosszát.