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

Пътят " е празен, съдържа само бели пространства или съдържа невалидни знаци.

UnauthorizedAccessException

code class=“paramref”>path.

PathTooLongException

code class=“paramref”>path", име на файла, или и двете надвишават максималната дължина, определена от системата. например, на платформи, базирани на Windows, пътеките трябва да са по-малко от 248 знака, а имената на файла трябва да са по-малко от 260.

NotSupportedException

code class=“paramref”>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(Продължаване, byte[])

Напишете на изходния поток всички заглавия, които следват компресираните данни.

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 записи.

 Български