Class SevenZipArchive
Именује се: Aspose.Zip.SevenZip Асамблеја: Aspose.Zip.dll (25.5.0)
Ова класа представља 7з архивни датотеку. користите га да компонује и извлачи 7з архиве.
public class SevenZipArchive : IArchive, IDisposable
Inheritance
Implements
Наслеђени чланови
object.GetType() , object.MemberwiseClone() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()
Constructors
SevenZipArchive(SevenZipEntrySettings)
Иницијалише нову инстанцију Аппосе.Зип.СедамЗип.СедамЗипАрхиве класе са опционалним подешавањама за његове улоге.
public SevenZipArchive(SevenZipEntrySettings newEntrySettings = null)
Parameters
newEntrySettings
SevenZipEntrySettings
Подешавања компресије и шифровања коришћена за ново додате Aspose.Zip.SevenZip.SevenZipArchiveEntry елементе.Ако није наведено, ЛЗМА компресија без шифровања би се користила.
Examples
Следећи пример показује како да компресирате јединствену датотеку са подразумеваним подешавањама: ЛЗМ-компресија без шифровања.
using (FileStream sevenZipFile = File.Open("archive.7z", FileMode.Create))
{
using (var archive = new SevenZipArchive())
{
archive.CreateEntry("data.bin", "file.dat");
archive.Save(sevenZipFile);
}
}
SevenZipArchive(струја, струја)
Иницијалише нову инстанцију Аппосе.Зип.СедамЗип.СедамЗипАрхиве класе и саставља улазну листу која се може извући из архива.
public SevenZipArchive(Stream sourceStream, string password = null)
Parameters
sourceStream
Stream
Извор из архива.
password
string
Опционална лозинка за дешифровање. ако су имена датотека шифровани, мора бити присутан.
Examples
using (SevenZipArchive archive = new SevenZipArchive(File.OpenRead("archive.7z")))
{
archive.ExtractToDirectory("C:\\extracted");
}
Remarks
Овај конструктор не декомпресира било који улаз. погледајте Аппосе.Зип.СедамЗип.СедамЗипАрцхиве.ЕкстрактТоДиректор(Систем.Стринг,Систем.Стринг) метод за декомпресирање.
Exceptions
sourceStream’ is not seekable.
sourceStream’ is null.
Архив садржи више од једног кодера. сада је подржана само ЛЗМА компресија.
SevenZipArchive(Стринг , Стринг)
Иницијалише нову инстанцију Аппосе.Зип.СедамЗип.СедамЗипАрхиве класе и саставља улазну листу која се може извући из архива.
public SevenZipArchive(string path, string password = null)
Parameters
path
string
Потпуно квалификовани или релативни пут до архивног датотеке.
password
string
Опционална лозинка за дешифровање. ако су имена датотека шифровани, мора бити присутан.
Examples
using (SevenZipArchive archive = new SevenZipArchive("archive.7z"))
{
archive.ExtractToDirectory("C:\\extracted");
}
Remarks
Овај конструктор не декомпресира било који улаз. погледајте Аппосе.Зип.СедамЗип.СедамЗипАрцхиве.ЕкстрактТоДиректор(Систем.Стринг,Систем.Стринг) метод за декомпресирање.
Exceptions
path’ is null.
Позивач нема захтеван дозволу за приступ.
path’ је празан, садржи само беле просторе, или садржи неважеће знакове.
Приступ датотеци path’ је одбијен.
На пример, на платформима заснованим на Виндовсу, путеви морају бити мање од 248 знакова, а имена датотеке морају бити мање од 260 знакова.
Датотека у path’ садржи колону (:) у средини редове.
Датотека није пронађена.
Одређени пут је неважећи, на пример, да се налази на немапираном дискову.
Датотека је већ отворена.
SevenZipArchive(Стринг[], Стринг)
Иницијалише нову инстанцију Аппосе.Зип.СедамЗип.СедамЗипАрхиве класе из мулти-волум 7з архива и саставља листу улаза може се извући из архива.
public SevenZipArchive(string[] parts, string password = null)
Parameters
parts
string
[]
Пут у сваки сегмент мулти-волумен 7з архива у складу са редоследом
password
string
Опционална лозинка за дешифровање. ако су имена датотека шифровани, мора бити присутан.
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.
Позивач нема захтеван дозволу за приступ.
Пут до датотеке је празан, садржи само беле просторе, или садржи неважеће знакове.
Доступ до датотеке је одбијен.
На пример, на платформима заснованим на Виндовсу, путеви морају бити мање од 248 знакова, а имена датотеке морају бити мање од 260 знакова.
Датотека на путу садржи колону (:) у средини траке.
Properties
Entries
Добије улазе из типа Aspose.Zip.SevenZip.SevenZipArchiveEntry који чине архиву.
public ReadOnlyCollection<sevenziparchiveentry> Entries { get; }
Вредност имовине
ReadOnlyCollection < SevenZipArchiveEntry >
NewEntrySettings
Подешавања компресије и шифровања коришћена за ново додате Aspose.Zip.SevenZip.SevenZipArchiveEntry елементе.
public SevenZipEntrySettings NewEntrySettings { get; }
Вредност имовине
Methods
CreateEntries(ДирективаИнфо, Боол)
Додајте архиву све датотеке и директорије поновљено у датом директоријуму.
public SevenZipArchive CreateEntries(DirectoryInfo directory, bool includeRootDirectory = true)
Parameters
directory
DirectoryInfo
Директоријум за компресију.
includeRootDirectory
bool
Показује да ли треба да укључите коренски директоријум или не.
Returns
Архив са уносом састављен.
Examples
using (SevenZipArchive archive = new SevenZipArchive())
{
DirectoryInfo folder = new DirectoryInfo("C:\folder");
archive.CreateEntries(folder);
archive.Save("folder.7z");
}
Exceptions
Пут до directory’ је немогућ, као што је бити на немапираном диску.
Позивач нема захтеван дозволу за приступ directory'.
CreateEntries(КСНУМКС, Боол)
Додајте архиву све датотеке и директорије поновљено у датом директоријуму.
public SevenZipArchive CreateEntries(string sourceDirectory, bool includeRootDirectory = true)
Parameters
sourceDirectory
string
Директоријум за компресију.
includeRootDirectory
bool
Показује да ли треба да укључите коренски директоријум или не.
Returns
Архив са уносом састављен.
Examples
Саставите 7з архиву са ЛЗМА2 компресијом.
using (SevenZipArchive archive = new SevenZipArchive(new SevenZipEntrySettings(new SevenZipLZMACompressionSettings())))
{
archive.CreateEntries("C:\folder");
archive.Save("folder.7z");
}
CreateEntry(string, FileInfo, bool, SevenZipEntrySettings)
Креирање јединственог улаза у архиву.
public SevenZipArchiveEntry CreateEntry(string name, FileInfo fileInfo, bool openImmediately = false, SevenZipEntrySettings newEntrySettings = null)
Parameters
name
string
Име улаза.
fileInfo
FileInfo
метадане датотеке да се компресирају.
openImmediately
bool
Истина, ако отворите датотеку одмах, иначе отворите датотеку на архивом.
newEntrySettings
SevenZipEntrySettings
Подешавања компресије и шифровања коришћена за додавање Aspose.Zip.SevenZip.SevenZipArchiveEntry елемента.
Returns
7 ЦИП улазак инстанције.
Examples
Саставите архиве са улазама шифрованим са различитим лозинкама сваки.
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
Име уноса је постављено само унутар параметара. име датотеке које је наведено у параметру не утиче на име уноса.
Ако се датотека одмах отвара са параметром, блокира се док се архива не чува.
Exceptions
fileInfo’ is read-only or is a directory.
Одређени пут је неважећи, на пример, да се налази на немапираном дискову.
Датотека је већ отворена.
CreateEntry(string, Stream, SevenZipEntrySettings, FileSystemInfo)
Креирање јединственог улаза у архиву.
public SevenZipArchiveEntry CreateEntry(string name, Stream source, SevenZipEntrySettings newEntrySettings, FileSystemInfo fileInfo)
Parameters
name
string
Име улаза.
source
Stream
Улазни ток за улазак.
newEntrySettings
SevenZipEntrySettings
Подешавања компресије и шифровања коришћена за додавање Aspose.Zip.SevenZip.SevenZipArchiveEntry елемента.
fileInfo
FileSystemInfo
Метадане датотеке или фасцикла да се компресирају.
Returns
7 Инстанција за улазак.
Examples
Састављање архива са ЛЗМА2 компресираним шифрованим улазом.
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
Име уноса је постављено само унутар параметара. име датотеке које је наведено у параметру не утиче на име уноса.
може се односити на System.IO.DirectoryInfo ако је унос директоријум.
Exceptions
И source’ и
fileInfo’ су нула или
source’ је нула и
fileInfo’ значи за директоријум.
CreateEntry(струја, струја, SevenZipEntrySettings)
Креирање јединственог улаза у архиву.
public SevenZipArchiveEntry CreateEntry(string name, Stream source, SevenZipEntrySettings newEntrySettings = null)
Parameters
name
string
Име улаза.
source
Stream
Улазни ток за улазак.
newEntrySettings
SevenZipEntrySettings
Подешавања компресије и шифровања коришћена за додавање Aspose.Zip.SevenZip.SevenZipArchiveEntry елемента.
Returns
ЦИП улаз инстанција.
Examples
Саставите 7з архиву са ЛЗМА2 компресијом и шифровањем свих улога.
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(string, string, bool, SevenZipEntrySettings)
Креирање јединственог улаза у архиву.
public SevenZipArchiveEntry CreateEntry(string name, string path, bool openImmediately = false, SevenZipEntrySettings newEntrySettings = null)
Parameters
name
string
Име улаза.
path
string
Потпуно квалификовано име новог датотеке или релативно име датотеке које треба компресирати.
openImmediately
bool
Истина, ако отворите датотеку одмах, иначе отворите датотеку на архивом.
newEntrySettings
SevenZipEntrySettings
Подешавања компресије и шифровања коришћена за додавање Aspose.Zip.SevenZip.SevenZipArchiveEntry елемента.
Returns
ЦИП улаз инстанција.
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
Име уноса је постављено само унутар параметара. име датотеке које је наведено у параметру не утиче на име уноса.
Ако се датотека одмах отвара са параметром, блокира се док се архива не чува.
Exceptions
path’ is null.
Позивач нема захтеван дозволу за приступ.
path’ је празан, садржи само беле просторе, или садржи неважеће знакове.
Приступ датотеци path’ је одбијен.
На пример, на платформима заснованим на Виндовсу, путеви морају бити мање од 248 знакова, а имена датотеке морају бити мање од 260 знакова.
Датотека у path’ садржи колону (:) у средини редове.
Dispose()
Извршава апликације-дефинисане задатке повезане са ослобађањем, ослобађањем или рестаурацијом неконтролисаних ресурса.
public void Dispose()
Dispose(Боол)
Извршава апликације-дефинисане задатке повезане са ослобађањем, ослобађањем или рестаурацијом неконтролисаних ресурса.
protected virtual void Dispose(bool disposing)
Parameters
disposing
bool
Da li je potrebno iskoristiti upravljane resurse?
ExtractToDirectory(Стринг , Стринг)
Екстрактира све датотеке у архиви у додатак директоријум.
public void ExtractToDirectory(string destinationDirectory, string password = null)
Parameters
destinationDirectory
string
Пут у директоријум да стави извучене датотеке у.
password
string
Опционални лозинка за дешифровање садржаја.
Examples
using (var archive = new SevenZipArchive("archive.7z"))
{
archive.ExtractToDirectory("C:\extracted");
}
Remarks
Ако директоријум не постоји, он ће бити креиран.
Користи се само за дешифровање садржаја. ако су имена датотеке шифровани, дајте лозинку у Aspose.Zip.SevenZop.SevenZapArchive.#ctor(System.String,Systems. String) или __ WL51.ZIP.seven ZipArhive .# ctor (Sistem.IO.Stream,systeme.string).
Exceptions
destinationDirectory’ is null.
На пример, на платформима заснованим на Виндовсу, путеви морају бити мање од 248 знакова, а имена датотека морају бити мање од 260 знакова.
Позивач нема неопходне дозволе за приступ постојећем директоријуму.
Ако директоријум не постоји, пут садржи карактер колона (:) који није део етикета дискова (“Ц:”).
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 (:).
Директоријум који је одређен путем је датотека. -или- Име мреже није познато.
Архив је корумпиран.
Save(Stream)
Сачува 7з архиву на пруженом току.
public void Save(Stream output)
Parameters
output
Stream
Дисциплинарни ток.
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
Mora da bude tražljiva.
Exceptions
output’ does not support seeking.
output’ is null.
Koder nije uspeo da kompresiše podatke.
Save(Стринг)
Сачува архиве на датотеку дестинације која је обезбеђена.
public void Save(string destinationFileName)
Parameters
destinationFileName
string
Ако наведено име датотеке указује на постојећи датотеку, то ће бити преписано.
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
Могуће је сачувати архиву на исти пут од којих је преузета. међутим, ово се не препоручује јер овај приступ користи копирање на привремени датотеку.
Exceptions
destinationFileName’ is null.
Позивач нема захтеван дозволу за приступ.
destinationFileName’ je prazan, sadrži samo bele prostore ili sadrži nevažeće znakove.
Приступ датотеци destinationFileName’ је одбијен.
На пример, на платформима заснованим на Виндовсу, путеви морају бити мање од 248 знакова, а имена датотеке морају бити мање од 260 знакова.
Датотека у destinationFileName’ садржи колону (:) у средини редове.
SaveSplit(string, SplitSevenZipArchiveSaveOptions)
Сачува мулти-волумен архива у дизајнерски директоријум који је обезбеђен.
public void SaveSplit(string destinationDirectory, SplitSevenZipArchiveSaveOptions options)
Parameters
destinationDirectory
string
Пут у директоријум у којем ће бити креирани архивни сегменти.
options
SplitSevenZipArchiveSaveOptions
Опције за складиштење архива, укључујући име датотеке.
Examples
using (SevenZipArchive archive = new SevenZipArchive())
{
archive.CreateEntry("entry.bin", "data.bin");
archive.SaveSplit(@"C:\Folder", new SplitSevenZipArchiveSaveOptions("volume", 65536));
}
Remarks
Ова метода састоји се од неколико () датотека filename.7z.001, filename.7z.002, …, filename.7z.(n).
Немогуће је направити постојећи архиви мулти-волумен.
Exceptions
Овај архив је отворен из постојећег извора.
destinationDirectory’ is null.
Позивач нема неопходне дозволе за приступ директоријуму.
destinationDirectory’ contains invalid characters such as “, >, <, or |.
Одређени пут прелази максималну дужину одређену системом.