Class ArchiveEntry

Class ArchiveEntry

Το όνομα: Aspose.Zip Συγκέντρωση: Aspose.Zip.dll (25.5.0)

Αντιπροσωπεύει ένα ενιαίο αρχείο στο αρχείο.

public abstract class ArchiveEntry : IArchiveFileEntry

Inheritance

object ArchiveEntry

Derived

ArchiveEntryEncrypted , ArchiveEntryPlain

Implements

IArchiveFileEntry

Κληρονομημένα μέλη

object.GetType() , object.MemberwiseClone() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()

Remarks

Κάντε μια περίπτωση Aspose.Zip.ArchiveEntry στο Aspose.Zip.ArchiveEntryΚρυπτογραφημένο για να καθορίσετε αν η εισαγωγή είναι κρυπτογραφημένη ή όχι.

Constructors

ArchiveEntry(Στέλινγκ, CompressionSettings, FuncΟΥΝΤ)

Αρχίζει μια νέα περίπτωση της κατηγορίας Aspose.Zip.ArchiveEntry.

protected ArchiveEntry(string name, CompressionSettings compressionSettings, Func<stream> sourceProvider, uint fileAttributes)

Parameters

name string

Εισαγωγικό όνομα.

compressionSettings CompressionSettings

Οι ρυθμίσεις για συμπίεση ή αποσυμπίεση.

sourceProvider Func &lt · Stream >

Η μέθοδος επιστροφής ρεύματος με τα δεδομένα εισόδου είτε να συμπιέζονται.

fileAttributes uint

Τα χαρακτηριστικά του συστήματος αρχείων.

ArchiveEntry(Σύνδεσμος, CompressionSettings, Stream, uint, FileSystemInfo)

Αρχίζει μια νέα περίπτωση της κατηγορίας Aspose.Zip.ArchiveEntry.

protected ArchiveEntry(string name, CompressionSettings compressionSettings, Stream source, uint fileAttributes, FileSystemInfo fileInfo = null)

Parameters

name string

Εισαγωγικό όνομα.

compressionSettings CompressionSettings

Οι ρυθμίσεις για συμπίεση ή αποσυμπίεση.

source Stream

Η ροή με τα δεδομένα εισόδου είτε να συμπιέζονται είτε να αποσυμπιέζονται.

fileAttributes uint

Τα χαρακτηριστικά του συστήματος αρχείων.

fileInfo FileSystemInfo

Το αρχείο ή το κατάλογο ενημερώνει την είσοδο με βάση.

Properties

Comment

Κάντε ένα σχόλιο από την είσοδο στο αρχείο.

public string Comment { get; protected set; }

Αξία ιδιοκτησίας

string

CompressedSize

Αποκτά το μέγεθος του συμπιεσμένου αρχείου.

public ulong CompressedSize { get; }

Αξία ιδιοκτησίας

ulong

CompressionSettings

Έχει ρυθμίσεις για συμπίεση ή αποσύνθεση.

public CompressionSettings CompressionSettings { get; }

Αξία ιδιοκτησίας

CompressionSettings

DataSource

Πηγή εισόδου εάν η εισαγωγή προστέθηκε στο αρχείο, δεν εξάγεται.

public Stream DataSource { get; }

Αξία ιδιοκτησίας

Stream

Remarks

Πριν από την ανάθεση, η πηγή είναι μηδενική. Αυτή η πηγή μπορεί να ανατεθεί μέσα στη μέθοδο “Archive.Save” σε ορισμένες περιπτώσεις.

FileAttributes

Απολαμβάνει τα χαρακτηριστικά αρχείων από το σύστημα φιλοξενίας.

protected FileAttributes FileAttributes { get; }

Αξία ιδιοκτησίας

FileAttributes

IsDirectory

Αποκτά μια τιμή που υποδεικνύει αν η εισαγωγή αντιπροσωπεύει ένα κατάλογο.

public bool IsDirectory { get; }

Αξία ιδιοκτησίας

bool

ModificationTime

Αποκτά ή καθορίζει την τελευταία τροποποιημένη ημερομηνία και ώρα.

public DateTime ModificationTime { get; set; }

Αξία ιδιοκτησίας

DateTime

Name

Πάρτε το όνομα της εισόδου μέσα στο αρχείο.

public string Name { get; protected set; }

Αξία ιδιοκτησίας

string

UncompressedSize

Αποκτά το μέγεθος του αρχείου.

public ulong UncompressedSize { get; }

Αξία ιδιοκτησίας

ulong

Methods

Extract(Σύνδεσμος, Σύνδεσμος)

Εξάγει την είσοδο στο σύστημα αρχείων με το προσδιορισμένο μονοπάτι.

public FileInfo Extract(string path, string password = null)

Parameters

path string

Ο δρόμος προς το αρχείο προορισμού.Εάν το αρχείο ήδη υπάρχει, θα είναι υπεργραφόμενο.

password string

Εναλλακτικό κωδικό πρόσβασης για αποκρυπτογράφηση.

Returns

FileInfo

Πληροφορίες για το αρχείο της σύνθεσης.

Examples

Εξάγετε δύο εγγραφές από το αρχείο zip, το καθένα με το δικό του κωδικό πρόσβασης

using (FileStream zipFile = File.Open("archive.zip", FileMode.Open))
{
    using (Archive archive = new Archive(zipFile))
    {
        archive.Entries[0].Extract("first.bin", "first_pass");
        archive.Entries[1].Extract("second.bin", "second_pass");
    }
}

Exceptions

ArgumentNullException

path’ is null.

SecurityException

Ο κάτοχος δεν έχει την απαιτούμενη άδεια πρόσβασης.

ArgumentException

Το path’ είναι άδειο, περιέχει μόνο λευκούς χώρους, ή περιέχει άκυρους χαρακτήρες.

UnauthorizedAccessException

Η πρόσβαση στο αρχείο path" αρνείται.

PathTooLongException

Το καθορισμένο path’, όνομα αρχείου, ή και τα δύο υπερβαίνουν το μέγιστο μήκος που καθορίζεται από το σύστημα. Για παράδειγμα, σε πλατφόρμες με βάση τα Windows, οι διαδρομές πρέπει να είναι λιγότερες από 248 χαρακτήρες και τα ονόματα αρχείων πρέπει να είναι λιγότερες από 260 χαρακτήρες.

NotSupportedException

Το αρχείο στο path’ περιέχει μια στήλη (:) στη μέση της γραμμής.

FileNotFoundException

Το αρχείο δεν βρέθηκε.

DirectoryNotFoundException

Η καθορισμένη διαδρομή είναι αναποτελεσματική, για παράδειγμα, να είναι σε μια μη χαρτογράφιμη οδήγηση.

IOException

Το αρχείο είναι ήδη ανοιχτό.

InvalidDataException

Τα δεδομένα είναι κατεστραμμένα. -ή- CRC ή MAC επαλήθευση απέτυχε για την είσοδο.

Extract(Σύνδεση, Σύνδεση)

Απομακρύνετε την είσοδο στο προσφερόμενο ρεύμα.

public void Extract(Stream destination, string password = null)

Parameters

destination Stream

Ο προορισμός πρέπει να είναι γραπτός.

password string

Εναλλακτικό κωδικό πρόσβασης για αποκρυπτογράφηση.

Examples

Εξάγετε μια είσοδο από το αρχείο zip με κωδικό πρόσβασης.

using (FileStream zipFile = File.Open("archive.zip", FileMode.Open))
{
    using (Archive archive = new Archive(zipFile))
    {
        archive.Entries[0].Extract(httpResponseStream, "p@s$");
    }
}

Exceptions

InvalidDataException

Τα δεδομένα είναι κατεστραμμένα. -ή- CRC ή MAC επαλήθευση απέτυχε για την είσοδο.

IOException

Η πηγή είναι κατεστραμμένη ή μη αναγνώσιμη.

ArgumentException

destination’ does not support writing.

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 &lt; (bytesRead = decompressed.Read(buffer, 0, buffer.Length)))
 fileStream.Write(buffer, 0, bytesRead);
```</p>

#### Remarks

<p>Read from the stream to get the original content of a file. See examples section.</p>

#### Exceptions

 [InvalidOperationException](https://learn.microsoft.com/dotnet/api/system.invalidoperationexception)

The archive is in an incorrect state.

### <a id="Aspose_Zip_ArchiveEntry_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.ArchiveEntry.

ExtractionProgressed

Αυξάνεται όταν μια μερίδα της πρώτης ροής εξάγεται.

public event EventHandler<progresseventargs> ExtractionProgressed

Τύπος εκδήλωσης

EventHandler &lt · ProgressEventArgs >

Examples

archive.Entries[0].ExtractionProgressed += (s, e) =&gt; { int percent = (int)((100 * e.ProceededBytes) / ((ArchiveEntry)s).UncompressedSize); };

Remarks

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

 Ελληνικά