Class RarArchive
Название пространства: Aspose.Zip.Rar Ассоциация: Aspose.Zip.dll (25.5.0)
Этот класс представляет собой RAR архивный файл. Используйте его для извлечения RAR архивов.
public class RarArchive : IArchive, IDisposable
Inheritance
Implements
Наследованные члены
object.GetType() , object.MemberwiseClone() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()
Constructors
RarArchive(Ретки, RarArchiveLoadOptions)
Инициализует новую инстанцию класса Aspose.Zip.Rar.RarArchive и составляет входный список, который можно извлечь из архива.
public RarArchive(string path, RarArchiveLoadOptions loadOptions = null)
Parameters
path
string
Полностью квалифицированный или относительный путь к архиву.
loadOptions
RarArchiveLoadOptions
Возможность загрузки существующих архивов.
Examples
Следующий пример выводит архив, а затем декомпрессирует первый вход в .
var extracted = new MemoryStream();
using (RarArchive archive = new RarArchive("data.rar"))
{
using (var decompressed = archive.Entries[0].Open())
{
byte[] b = new byte[8192];
int bytesRead;
while (0 < (bytesRead = decompressed.Read(b, 0, b.Length)))
extracted.Write(b, 0, bytesRead);
}
}
Remarks
Этот конструктор не декомпрессирует любые входы. см. Метод декомпрессии Aspose.Zip.Rar.RarArchiveEntry.Open(System.String).
Exceptions
path’ is null.
Заказчик не имеет требуемого разрешения на доступ.
path" пустая, содержит только белые пространства или содержит недействительные символы.
Доступ к файлу path" отказывается.
Указанный path", имя файла, или оба превышают максимальную длину, установленную системой. Например, на платформах на базе Windows, пути должны быть менее 248 символов, а имена файлов должны быть менее 260 символов.
Файл в path’ содержит колону (:) в середине строки.
Файл не найден.
Указанный маршрут является недействительным, например, находиться на немапированном диске.
Файл уже открыт.
RarArchive(Поток, RarArchiveLoadOptions)
Инициализует новую инстанцию класса Aspose.Zip.Rar.RarArchive и составляет входный список, который можно извлечь из архива.
public RarArchive(Stream sourceStream, RarArchiveLoadOptions loadOptions = null)
Parameters
sourceStream
Stream
Источник этого архива.
loadOptions
RarArchiveLoadOptions
Возможность загрузки существующих архивов.
Examples
Следующий пример децифрует и декомпрессирует первый вход в .
var fs = File.OpenRead("encrypted.rar");
var extracted = new MemoryStream();
using (RarArchive archive = new RarArchive(fs, new RarArchiveLoadOptions() { DecryptionPassword = "p@s$" }))
{
using (var decompressed = archive.Entries[0].Open())
{
byte[] b = new byte[8192];
int bytesRead;
while (0 < (bytesRead = decompressed.Read(b, 0, b.Length)))
extracted.Write(b, 0, bytesRead);
}
}
Remarks
Этот конструктор не декомпрессирует любые входы. см. Метод декомпрессии Aspose.Zip.Rar.RarArchiveEntry.Open(System.String).
Exceptions
sourceStream’ is not seekable.
Неправильный подпись для архива. - или - Файл не является RAR архивом.
Properties
Entries
Получается вход типа Aspose.Zip.Rar.RarArchiveEntry, составляющий редкий архив.
public ReadOnlyCollection<rararchiveentry> Entries { get; }
Стоимость недвижимости
ReadOnlyCollection • < RarArchiveEntry >
Methods
Dispose(Боол)
Осуществляет задания, определенные приложением, связанные с освобождением, освобождением или восстановлением неконтролируемых ресурсов.
protected virtual void Dispose(bool disposing)
Parameters
disposing
bool
Следует ли использовать управляемые ресурсы.
Dispose()
Осуществляет задания, определенные приложением, связанные с освобождением, освобождением или восстановлением неконтролируемых ресурсов.
public void Dispose()
ExtractToDirectory(Стринг, Стринг)
Выводит все файлы в архиве в предоставленный каталог.
[Obsolete("For extraction encrypted RAR archive please provide password in constructor with Aspose.Zip.Rar.RarArchiveLoadOptions.DecryptionPassword")]
public void ExtractToDirectory(string destinationDirectory, string password = null)
Parameters
destinationDirectory
string
Путь к каталогу для размещения извлеченных файлов.
password
string
Опциональный пароль для расшифровки.
Examples
using (var archive = new RarArchive("archive.rar"))
{
archive.ExtractToDirectory("C:\extracted", "$ecRet");
}
Remarks
Если каталог не существует, он будет создан.
Exceptions
destinationDirectory’ is null.
Например, на платформах, основанных на Windows, маршруты должны быть менее 248 символов, а имена файлов должны быть менее 260 символов.
Заклинатель не имеет требуемого разрешения на доступ к существующему каталогу.
Если каталог не существует, то маршрут содержит колонный характер (:) который не является частью дисковой маркировки («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 (:).
Каталог, указанный по маршруту, является файлом. -или- Название сети неизвестно.
ExtractToDirectory(Стриг)
Выводит все файлы в архиве в предоставленный каталог.
public void ExtractToDirectory(string destinationDirectory)
Parameters
destinationDirectory
string
Путь к каталогу для размещения извлеченных файлов.
Examples
using (var archive = new RarArchive("archive.rar"))
{
archive.ExtractToDirectory("C:\extracted");
}
Remarks
Если каталог не существует, он будет создан.
Exceptions
destinationDirectory’ is null.
Например, на платформах, основанных на Windows, маршруты должны быть менее 248 символов, а имена файлов должны быть менее 260 символов.
Заклинатель не имеет требуемого разрешения на доступ к существующему каталогу.
Если каталог не существует, то маршрут содержит колонный характер (:) который не является частью дисковой маркировки («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 (:).
Каталог, указанный по маршруту, является файлом. -или- Название сети неизвестно.