Class SevenZipArchiveEntry

Class SevenZipArchiveEntry

Названий на: Aspose.Zip.SevenZip Асамблея: Aspose.Zip.dll (25.5.0)

З’являється один файл в архіві 7Z.

public abstract class SevenZipArchiveEntry : IArchiveFileEntry

Inheritance

object SevenZipArchiveEntry

Derived

SevenZipArchiveEntryEncrypted , SevenZipArchiveEntryPlain

Implements

IArchiveFileEntry

Нападні члени

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; }

вартість нерухомості

ulong

CompressionSettings

Використовується для компресії або декомпресії.

public SevenZipCompressionSettings CompressionSettings { get; }

вартість нерухомості

SevenZipCompressionSettings

FileAttributes

Приймає атрибути файлів з хостингової системи.

protected FileAttributes FileAttributes { get; }

вартість нерухомості

FileAttributes

IsDirectory

Отримається значення, яке вказує на те, чи є вхід директором.

public bool IsDirectory { get; }

вартість нерухомості

bool

ModificationTime

Отримано останню змінену дату і час.

public DateTime ModificationTime { get; }

вартість нерухомості

DateTime

Name

Знайдіть ім’я входу в архіві.

public string Name { get; protected set; }

вартість нерухомості

string

Source

Отримайте потік джерела даних для входу.

protected Stream Source { get; }

вартість нерухомості

Stream

UncompressedSize

Розмір оригінального файлу.

public ulong UncompressedSize { get; }

вартість нерухомості

ulong

Methods

Extract(Стринг, Стринг)

Витягує вхід до файлової системи шляхом, що надається.

public FileInfo Extract(string path, string password = null)

Parameters

path string

Якщо файл вже існує, він буде переписаний.

password string

Опціональний пароль для дешифрування.

Returns

FileInfo

Інформація про складений файл.

Examples

using (var archive = new SevenZipArchive("archive.7z"))
{
    archive.Entries[0].Extract("data.bin");
}

Exceptions

ArgumentNullException

path’ is null.

SecurityException

Замовник не має необхідного дозволу на доступ.

ArgumentException

path’ є порожнім, містить тільки білі простори, або містить недійсні символи.

UnauthorizedAccessException

Доступ до файлу path" відмовляється.

PathTooLongException

Наприклад, на платформах, заснованих на Windows, шляхи повинні бути менше 248 символів, а імена файлів повинні бути менше 260 символів.

NotSupportedException

Файл в path’ містить колону (:) в середині смуги.

InvalidDataException

Архів був зруйнований.

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

ArgumentException

destination’ does not support writing.

InvalidOperationException

Архів не відкривається для екстракції. - або - Цей вхід є каталогом.

InvalidDataException

Помилкові дані в вході.

FinalizeCompressedData(Потік, байт[])

Напишіть до потоку виходу будь-які заголовки, які слідують за компресованими даними.

protected abstract int FinalizeCompressedData(Stream outputStream, byte[] encoderProperties)

Parameters

outputStream Stream

Вихідний потік для входу.

encoderProperties byte [ ]

Особливості компресора.

Returns

int

Кількість “технічних” байтів, які були додані після введення значного блоку даних.

GetDestinationStream(Stream)

Дохідний потік для входу, може бути прикрашений.

protected abstract Stream GetDestinationStream(Stream outputStream)

Parameters

outputStream Stream

Вихідний потік для входу.

Returns

Stream

Мета потоку для вхідної компресії.

Open(стрічка)

Відкриває вхід для екстракції і забезпечує потік з вхідним вмістом.

public Stream Open(string password = null)

Parameters

password string

Опціональний пароль для дешифрування.

Returns

Stream

Потік, що представляє зміст входу.

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) =&gt; { int percent = (int)((100 * (long)e.ProceededBytes) / entrySourceStream.Length); };

Remarks

Відправник подій є прикладом Aspose.Zip.SevenZip.SevenZipArchiveEntry.

Не закликає в багаторазовому режимі для входів LZMA2.

 Українська