Class XarFileEntry
Namespace: Aspose.Zip.Xar
Assembly: Aspose.Zip.dll (25.1.0)
Reprezentuje wpis pliku w archiwum xar.
public sealed class XarFileEntry : XarEntry, IArchiveFileEntry
Dziedziczenie
object ← XarEntry ← XarFileEntry
Implementuje
Członkowie dziedziczeni
XarEntry.ToString(), XarEntry.Name, XarEntry.FullPath, XarEntry.IsDirectory, XarEntry.Parent, XarEntry.CreationTime, XarEntry.LastAccessTime, XarEntry.LastWriteTime, object.GetType(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()
Właściwości
Długość
Zwraca długość wpisu w bajtach.
public long Length { get; }
Wartość właściwości
Metody
Wyodrębnij(string)
Wyodrębnia wpis do systemu plików pod podaną ścieżką.
public FileInfo Extract(string path)
Parametry
path
string
Ścieżka do pliku docelowego. Jeśli plik już istnieje, zostanie nadpisany.
Zwraca
Informacje o pliku utworzonego pliku.
Przykłady
using (var archive = new XarArchive("archive.xar"))
{
((XarFileEntry)archive.Entries[0]).Extract("data.bin");
}
Wyjątki
path
jest null.
Wywołujący nie ma wymaganych uprawnień do dostępu.
path
jest pusty, zawiera tylko białe znaki lub zawiera nieprawidłowe znaki.
Dostęp do pliku path
jest zabroniony.
Określona path
, nazwa pliku lub obie przekraczają maksymalną długość zdefiniowaną przez system. Na przykład, na platformach opartych na Windows, ścieżki muszą mieć mniej niż 248 znaków, a nazwy plików muszą mieć mniej niż 260 znaków.
Plik na path
zawiera dwukropek (:) w środku ciągu.
Archiwum jest uszkodzone.
Wyodrębnij(Stream)
Wyodrębnia wpis do podanego strumienia.
public void Extract(Stream destination)
Parametry
destination
Stream
Strumień docelowy. Musi być zapisywalny.
Przykłady
Wyodrębnij wpis archiwum xar.
using (var archive = new XarArchive("archive.xar"))
{
((XarFileEntry)archive.Entries[0]).Extract(httpResponseStream);
}
Wyjątki
destination
nie obsługuje zapisu.
Archiwum jest uszkodzone.
Otwórz()
Otwiera wpis do wyodrębnienia i udostępnia strumień z zawartością wpisu.
public Stream Open()
Zwraca
Strumień, który reprezentuje zawartość wpisu.
Przykłady
Użycie:
Stream decompressed = entry.Open();
.NET 4.0 i wyższe - użyj metody Stream.CopyTo:
decompressed.CopyTo(httpResponse.OutputStream)
.NET 3.5 i wcześniej - kopiuj bajty ręcznie:
byte[] buffer = new byte[8192];
int bytesRead;
while (0 < (bytesRead = decompressed.Read(buffer, 0, buffer.Length)))
fileStream.Write(buffer, 0, bytesRead);
```</p>
#### Uwagi
Odczytaj ze strumienia, aby uzyskać oryginalną zawartość pliku. Zobacz sekcję przykłady.
### <a id="Aspose_Zip_Xar_XarFileEntry_CompressionProgressed"></a> CompressionProgressed
Zgłasza, gdy część surowego strumienia jest kompresowana.
```csharp
public event EventHandler<progresseventargs> CompressionProgressed
Typ zdarzenia
EventHandler<ProgressEventArgs>
Przykłady
archive.Entries.First().CompressionProgressed += (s, e) => { int percent = (int)((100 * (long)e.ProceededBytes) / entrySourceStream.Length); };
Uwagi
Nadawcą zdarzenia jest instancja Aspose.Zip.Xar.XarFileEntry.