Class SevenZipArchiveEntry
Nazwa przestrzeń: Aspose.Zip.SevenZip Zestawienie: Aspose.Zip.dll (25.5.0)
Przedstawia jeden plik w archiwum 7z.
public abstract class SevenZipArchiveEntry : IArchiveFileEntry
Inheritance
Derived
SevenZipArchiveEntryEncrypted , SevenZipArchiveEntryPlain
Implements
Dziedziczeni członkowie
object.GetType() , object.MemberwiseClone() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()
Remarks
Wprowadź przykład Aspose.Zip.SevenZip.SevenZipArchiveEntry do Aspose.Zip.SevenZip.SevenZipArchiveEntry, aby określić, czy wpis jest szyfrowany, czy nie.
Properties
CompressedSize
Otrzymuje rozmiar kompresyjnego pliku.
public ulong CompressedSize { get; }
Wartość nieruchomości
CompressionSettings
Dostarcza ustawień do kompresji lub dekompresji.
public SevenZipCompressionSettings CompressionSettings { get; }
Wartość nieruchomości
FileAttributes
Otrzymuje atrybuty plików z systemu hostingu.
protected FileAttributes FileAttributes { get; }
Wartość nieruchomości
IsDirectory
Otrzymuje wartość wskazującą, czy wpis reprezentuje katalog.
public bool IsDirectory { get; }
Wartość nieruchomości
ModificationTime
Otrzymuje ostatnio zmienioną datę i godzinę.
public DateTime ModificationTime { get; }
Wartość nieruchomości
Name
Znajdź nazwę wpisu w archiwum.
public string Name { get; protected set; }
Wartość nieruchomości
Source
Otrzymuje strumień źródła danych dla wejścia.
protected Stream Source { get; }
Wartość nieruchomości
UncompressedSize
Otrzymuje rozmiar oryginalnego pliku.
public ulong UncompressedSize { get; }
Wartość nieruchomości
Methods
Extract(strumień, strumień)
Wyciąga wejście do systemu plików drogą dostarczoną.
public FileInfo Extract(string path, string password = null)
Parameters
path
string
Droga do pliku docelowego.Jeśli plik już istnieje, zostanie on przesłany.
password
string
Opcjonalne hasło do dekrypcji.
Returns
Informacje o pliku złożonego.
Examples
using (var archive = new SevenZipArchive("archive.7z"))
{
archive.Entries[0].Extract("data.bin");
}
Exceptions
path’ is null.
Klient nie posiada wymaganego zezwolenia na dostęp.
Ścieżka " jest pusta, zawiera tylko białe przestrzenie lub zawiera nieprawidłowe znaky.
Dostęp do pliku path" jest odrzucony.
Określenie path", nazwa pliku lub obie przekracza maksymalną długość określoną przez system. Na przykład, na platformach opartych na systemie Windows, ścieżki muszą być mniejsze niż 248 znaków, a nazwy plików muszą być mniejsze niż 260 znaków.
Plik w path’ zawiera kolumnę (:) w środku paska.
Archiwum jest zepsute.
Extract(strumień, strumień)
Wyciąga wejście do dostarczonego przepływu.
public void Extract(Stream destination, string password = null)
Parameters
destination
Stream
Destination stream. musi być pisemny.
password
string
Opcjonalne hasło do dekrypcji.
Examples
Wyciągnij wpis z archiwum zip z hasłem.
using (var archive = new SevenZipArchive("archive.7z"))
{
archive.Entries[0].Extract(httpResponseStream);
}
Exceptions
destination’ does not support writing.
Archiwum nie jest otwarte do ekstrakcji. - lub - Ten wpis jest adresem.
Nieprawidłowe dane w wejściu.
FinalizeCompressedData(Strumień, byta[])
Wpisz do przepływu wyjściowego dowolne nagłówki, które śledzą kompresowane dane.
protected abstract int FinalizeCompressedData(Stream outputStream, byte[] encoderProperties)
Parameters
outputStream
Stream
Przepływ wyjściowy dla wejścia.
encoderProperties
byte
[ ]
Właściwości kompresora.
Returns
Liczba „technicznych” bajtów, które zostały dodane po wprowadzeniu znaczącego bloku danych.
GetDestinationStream(Stream)
Przepływ docelowy do wejścia, może być ozdobiony.
protected abstract Stream GetDestinationStream(Stream outputStream)
Parameters
outputStream
Stream
Przepływ wyjściowy dla wejścia.
Returns
Przepływ docelowy do kompresji wejściowej.
Open(strumień)
Otwiera wejście do ekstrakcji i zapewnia strumień z treścią wejściową.
public Stream Open(string password = null)
Parameters
password
string
Opcjonalne hasło do dekrypcji.
Returns
Strumień, który reprezentuje treść wejścia.
Examples
Wykorzystanie :Stream decompressed = entry.Open();
.NET 4.0 i wyższy - użyj metody Stream.CopyTo:decompressed.CopyTo(httpResponse.OutputStream)
.NET 3.5 i wcześniej - kopiować byty ręcznie:
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
Rodzaj wydarzeń
EventHandler • < ProgressEventArgs >
Examples
archive.Entries[0].CompressionProgressed += (s, e) => { int percent = (int)((100 * (long)e.ProceededBytes) / entrySourceStream.Length); };
Remarks
Przesyłanie wydarzeń jest instancją Aspose.Zip.SevenZip.SevenZipArchiveEntry.
Nie odwołuje się w trybie wielokrotnym do wpisów LZMA2.