Class SevenZipArchiveEntry
Название пространства: Aspose.Zip.SevenZip Ассоциация: Aspose.Zip.dll (25.5.0)
Представляет один файл в 7Z архиве.
public abstract class SevenZipArchiveEntry : IArchiveFileEntry
Inheritance
Derived
SevenZipArchiveEntryEncrypted , SevenZipArchiveEntryPlain
Implements
Наследованные члены
object.GetType() , object.MemberwiseClone() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()
Remarks
Нажмите Aspose.Zip.SevenZip.SevenZipArchiveEntry-инстанцию в Aspose.Zip.SevenZip.SevenZipArchiveEntry, чтобы определить, зашифрован ли вход или нет.
Properties
CompressedSize
Получается размер компрессированного файла.
public ulong CompressedSize { get; }
Стоимость недвижимости
CompressionSettings
Получается настройка для компрессии или декомпрессии.
public SevenZipCompressionSettings CompressionSettings { get; }
Стоимость недвижимости
FileAttributes
Получает файловые атрибуты из хостинговой системы.
protected FileAttributes FileAttributes { get; }
Стоимость недвижимости
IsDirectory
Получается значение, указывающее, представляет ли вход каталог.
public bool IsDirectory { get; }
Стоимость недвижимости
ModificationTime
Получается последний измененный срок и дата.
public DateTime ModificationTime { get; }
Стоимость недвижимости
Name
Имеется имя входа в архиве.
public string Name { get; protected set; }
Стоимость недвижимости
Source
Получение потока источника данных для входа.
protected Stream Source { get; }
Стоимость недвижимости
UncompressedSize
Получается размер оригинального файла.
public ulong UncompressedSize { get; }
Стоимость недвижимости
Methods
Extract(Стринг, Стринг)
Выводит вход в файловую систему по предоставленному маршруту.
public FileInfo Extract(string path, string password = null)
Parameters
path
string
Путь к целевому файлу.Если файл уже существует, он будет переписан.
password
string
Опциональный пароль для расшифровки.
Returns
Информацию о файле составленного файла.
Examples
using (var archive = new SevenZipArchive("archive.7z"))
{
archive.Entries[0].Extract("data.bin");
}
Exceptions
path’ is null.
Заказчик не имеет требуемого разрешения на доступ.
path" пустая, содержит только белые пространства или содержит недействительные символы.
Доступ к файлу path" отказывается.
Указанный path", имя файла, или оба превышают максимальную длину, установленную системой. Например, на платформах на базе Windows, пути должны быть менее 248 символов, а имена файлов должны быть менее 260 символов.
Файл в path’ содержит колону (:) в середине строки.
Архив был коррумпирован.
Extract(Стрий, Стрий)
Выводит вход в предоставленный поток.
public void Extract(Stream destination, string password = null)
Parameters
destination
Stream
Достопримечательности. должно быть написано.
password
string
Опциональный пароль для расшифровки.
Examples
Выводить вход из архива zip с паролем.
using (var archive = new SevenZipArchive("archive.7z"))
{
archive.Entries[0].Extract(httpResponseStream);
}
Exceptions
destination’ does not support writing.
Архив не открывается для экстракции. - или - Этот вход является каталогом.
Неправильные данные в входе.
FinalizeCompressedData(Поток, байт[])
Напишите к потоку выхода любые заголовки, которые следуют компрессированным данным.
protected abstract int FinalizeCompressedData(Stream outputStream, byte[] encoderProperties)
Parameters
outputStream
Stream
Выходный поток для входа.
encoderProperties
byte
[ ]
Особенности компрессора.
Returns
Количество «технических» байтов, которые были добавлены после ввода значительного блока данных.
GetDestinationStream(Stream)
Проток назначения для входа, может быть украшен.
protected abstract Stream GetDestinationStream(Stream outputStream)
Parameters
outputStream
Stream
Выходный поток для входа.
Returns
Целевой поток для входа компрессии.
Open(Стриг)
Откроет вход для экстракции и обеспечивает поток с содержанием входа.
public Stream Open(string password = null)
Parameters
password
string
Опциональный пароль для расшифровки.
Returns
Проток, который представляет содержимое входа.
Examples
Использование :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>
#### Remarks
Read from the stream to get the original content of a file. See examples section.
#### Exceptions
[InvalidOperationException](https://learn.microsoft.com/dotnet/api/system.invalidoperationexception)
The archive is not opened for extraction. - or - This entry is a directory.
[InvalidDataException](https://learn.microsoft.com/dotnet/api/system.io.invaliddataexception)
Wrong data within the entry.
### <a id="Aspose_Zip_SevenZip_SevenZipArchiveEntry_CompressionProgressed"></a> CompressionProgressed
Raises when a portion of raw stream compressed.
```csharp
public event EventHandler<progresseventargs> CompressionProgressed
Тип событий
EventHandler • < ProgressEventArgs >
Examples
archive.Entries[0].CompressionProgressed += (s, e) => { int percent = (int)((100 * (long)e.ProceededBytes) / entrySourceStream.Length); };
Remarks
Посылатель событий представляет собой инстанцию Aspose.Zip.SevenZip.SevenZipArchiveEntry.
Не призывает в многоуровневом режиме для входов LZMA2.