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.
Призователят няма изискваното разрешение за достъп.
Пътят " е празен, съдържа само бели пространства или съдържа невалидни знаци.
code class=“paramref”>path.
code class=“paramref”>path", име на файла, или и двете надвишават максималната дължина, определена от системата. например, на платформи, базирани на Windows, пътеките трябва да са по-малко от 248 знака, а имената на файла трябва да са по-малко от 260.
code class=“paramref”>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(Продължаване, byte[])
Напишете на изходния поток всички заглавия, които следват компресираните данни.
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 записи.