Class WimFileEntry
Namespace: Aspose.Zip.Wim
Assembly: Aspose.Zip.dll (25.1.0)
Представляет собой отдельный файл в архиве wim.
public sealed class WimFileEntry : WimEntry, IArchiveFileEntry
Наследование
object ← WimEntry ← WimFileEntry
Реализует
Унаследованные члены
WimEntry.ToString(), WimEntry.Archive, WimEntry.Image, WimEntry.Parent, WimEntry.Name, WimEntry.ShortName, WimEntry.FullPath, WimEntry.ChangeTime, WimEntry.CreationTime, WimEntry.LastAccessTime, WimEntry.LastWriteTime, WimEntry.FileAttributes, WimEntry.AlternateDataStreams, WimEntry.HardLink, WimEntry.HasHardLinks, WimEntry.IsDirectory, object.GetType(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()
Свойства
Length
Получает длину записи в байтах.
public long Length { get; }
Значение свойства
Методы
Extract(string)
Извлекает запись в файловую систему по указанному пути.
public FileInfo Extract(string path)
Параметры
path
string
Путь к целевому файлу. Если файл уже существует, он будет перезаписан.
Возвращает
Информация о скомпонованном файле.
Примеры
using (var archive = new WimArchive("archive.wim"))
{
archive.Images[0].RootDirectory.Files[0].Extract("data.bin");
}
Исключения
path
равно null.
У вызывающего нет необходимых прав для доступа.
path
пуст, содержит только пробелы или содержит недопустимые символы.
Доступ к файлу path
запрещен.
Указанный path
, имя файла или оба превышают максимально допустимую длину, определенную системой. Например, на платформах Windows пути должны быть короче 248 символов, а имена файлов - короче 260 символов.
Файл по path
содержит двоеточие (:) в середине строки.
Файл не найден.
Указанный путь недействителен, например, находится на неотображаемом диске.
Файл уже открыт.
Архив поврежден.
Extract(Stream)
Извлекает запись в предоставленный поток.
public void Extract(Stream destination)
Параметры
destination
Stream
Целевой поток. Должен быть записываемым.
Примеры
Извлечение записи из архива wim.
using (var archive = new WimArchive("archive.wim"))
{
archive.Images[0].RootDirectory.Files[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>
#### Примечания
Читать из потока, чтобы получить оригинальное содержимое файла. См. раздел примеров.