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

Το καθορισμένο path’, όνομα αρχείου, ή και τα δύο υπερβαίνουν το μέγιστο μήκος που καθορίζεται από το σύστημα. Για παράδειγμα, σε πλατφόρμες με βάση τα 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(Σύνδεση, byte[])

Γράψτε στο ρεύμα εξόδου οποιαδήποτε επικεφαλίδες που ακολουθούν συμπιεσμένα δεδομένα.

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

Parameters

outputStream Stream

Εξέλιξη για την είσοδο.

encoderProperties byte [ ]

Χαρακτηριστικά του συμπιεστή.

Returns

int

Ο αριθμός των “τεχνικών” bytes που προστέθηκαν μετά την εισαγωγή σημαντικού μπλοκ δεδομένων.

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 με το χέρι:

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 &lt · ProgressEventArgs >

Examples

archive.Entries[0].CompressionProgressed += (s, e) =&gt; { int percent = (int)((100 * (long)e.ProceededBytes) / entrySourceStream.Length); };

Remarks

Ο αποστολέας γεγονότων είναι μια περίπτωση Aspose.Zip.SevenZip.SevenZipArchiveEntry.

Δεν επικαλείται σε πολυεπίπεδη λειτουργία για τις εγγραφές LZMA2.

 Ελληνικά