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.
Ο κάτοχος δεν έχει την απαιτούμενη άδεια πρόσβασης.
Το path’ είναι άδειο, περιέχει μόνο λευκούς χώρους, ή περιέχει άκυρους χαρακτήρες.
Η πρόσβαση στο αρχείο path" αρνείται.
Το καθορισμένο path’, όνομα αρχείου, ή και τα δύο υπερβαίνουν το μέγιστο μήκος που καθορίζεται από το σύστημα. Για παράδειγμα, σε πλατφόρμες με βάση τα Windows, οι διαδρομές πρέπει να είναι λιγότερες από 248 χαρακτήρες και τα ονόματα αρχείων πρέπει να είναι λιγότερες από 260 χαρακτήρες.
Το αρχείο στο 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
Ο αριθμός των “τεχνικών” bytes που προστέθηκαν μετά την εισαγωγή σημαντικού μπλοκ δεδομένων.
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 με το χέρι:
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.