Class CabEntry
Namespace: Aspose.Zip.Cab
Assembly: Aspose.Zip.dll (25.1.0)
Представляет отдельный файл в архиве cab.
public sealed class CabEntry : IArchiveFileEntry
Наследование
Реализует
Унаследованные члены
object.GetType(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()
Свойства
Длина
Получает длину записи в байтах.
public uint Length { get; }
Значение свойства
Имя
Получает имя записи в архиве.
public string Name { get; }
Значение свойства
Методы
Extract(string)
Извлекает запись в файловую систему по указанному пути.
public FileInfo Extract(string path)
Параметры
path
string
Путь к целевому файлу. Если файл уже существует, он будет перезаписан.
Возвращает
Информация о файле составного файла.
Примеры
using (var archive = new CabArchive("archive.cab"))
{
archive.Entries[0].Extract("data.bin");
}
Исключения
path
равно null.
У вызывающего нет необходимых прав доступа.
path
пуст, содержит только пробелы или содержит недопустимые символы.
Доступ к файлу path
запрещен.
Указанный path
, имя файла или оба превышают максимальную длину, определенную системой. Например, на платформах Windows пути должны быть менее 248 символов, а имена файлов должны быть менее 260 символов.
Файл по path
содержит двоеточие (:) в середине строки.
Файл не найден.
Указанный путь недействителен, например, находится на неотображаемом диске.
Файл уже открыт.
Инициализация потока не удалась из-за неверных данных.
Архив поврежден.
Extract(Stream)
Извлекает запись в предоставленный поток.
public void Extract(Stream destination)
Параметры
destination
Stream
Целевой поток. Должен быть записываемым.
Примеры
Извлечение записи из архива cab.
using (var archive = new CabArchive("archive.cab"))
{
archive.Entries[0].Extract(httpResponseStream);
}
Исключения
destination
не поддерживает запись.
Инициализация потока не удалась из-за неверных данных.
Архив поврежден.
Open()
Открывает запись для извлечения и предоставляет поток с содержимым записи.
public Stream Open()
Возвращает
Поток, представляющий содержимое записи.
Примеры
Использование:
Stream decompressed = entry.Open();
.NET 4.0 и выше - используйте метод Stream.CopyTo:
decompressed.CopyTo(httpResponse.OutputStream)
.NET 3.5 и ниже - копируйте байты вручную:
byte[] buffer = new byte[8192];
int bytesRead;
while (0 < (bytesRead = decompressed.Read(buffer, 0, buffer.Length)))
fileStream.Write(buffer, 0, bytesRead);
```</p>
#### Примечания
Чтение из потока для получения оригинального содержимого файла. См. раздел примеров.
#### Исключения
[NotSupportedException](https://learn.microsoft.com/dotnet/api/system.notsupportedexception)
Инициализация потока не удалась из-за неверных данных.
[InvalidDataException](https://learn.microsoft.com/dotnet/api/system.io.invaliddataexception)
Архив поврежден.
### <a id="Aspose_Zip_Cab_CabEntry_ToString"></a> ToString\(\)
```csharp
public override string ToString()