Class ArchiveEntry
Namespace: Aspose.Zip
Assembly: Aspose.Zip.dll (25.1.0)
מייצג קובץ בודד בתוך הארכיון.
public abstract class ArchiveEntry : IArchiveFileEntry
ירושה
נגזר
ArchiveEntryEncrypted, ArchiveEntryPlain
מיישם
חברים ירושים
object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()
הערות
המירו מופע של Aspose.Zip.ArchiveEntry ל-Aspose.Zip.ArchiveEntryEncrypted כדי לקבוע אם הפריט מוצפן או לא.
בונים
ArchiveEntry(string, CompressionSettings, Func<stream>, FileAttributes)
מאתחל מופע חדש של מחלקת Aspose.Zip.ArchiveEntry.
protected ArchiveEntry(string name, CompressionSettings compressionSettings, Func<stream> sourceProvider, FileAttributes fileAttributes)
פרמטרים
name
string
שם הפריט.
compressionSettings
CompressionSettings
הגדרות לדחיסה או לפריסה.
sourceProvider
Func<Stream>
שיטה שמחזירה זרם עם נתוני הפריט כדי לדחוס.
fileAttributes
FileAttributes
מאפיינים ממערכת הקבצים.
ArchiveEntry(string, CompressionSettings, Stream, FileAttributes, FileSystemInfo)
מאתחל מופע חדש של מחלקת Aspose.Zip.ArchiveEntry.
protected ArchiveEntry(string name, CompressionSettings compressionSettings, Stream source, FileAttributes fileAttributes, FileSystemInfo fileInfo = null)
פרמטרים
name
string
שם הפריט.
compressionSettings
CompressionSettings
הגדרות לדחיסה או לפריסה.
source
Stream
זרם עם נתוני הפריט כדי לדחוס או לפרוס.
fileAttributes
FileAttributes
מאפיינים ממערכת הקבצים.
fileInfo
FileSystemInfo
מידע על קובץ או תיקייה שעליהם מבוסס הפריט.
מאפיינים
Comment
מחזיר את ההערה של הפריט בתוך הארכיון.
public string Comment { get; protected set; }
ערך מאפיין
CompressedSize
מחזיר את גודל הקובץ הדחוס.
public ulong CompressedSize { get; }
ערך מאפיין
CompressionSettings
מחזיר את ההגדרות לדחיסה או לפריסה.
public CompressionSettings CompressionSettings { get; }
ערך מאפיין
DataSource
מקור עבור הפריט אם הפריט נוסף לארכיון, לא הופק.
public Stream DataSource { get; }
ערך מאפיין
הערות
לפני ההקצאה, המקור הוא null. מקור זה עשוי להיות מוקצה בתוך Archive.Save
בשורות מסוימות.
FileAttributes
מחזיר את מאפייני הקובץ ממערכת המארחת.
protected FileAttributes FileAttributes { get; }
ערך מאפיין
IsDirectory
מחזיר ערך המציין אם הפריט מייצג תיקייה.
public bool IsDirectory { get; }
ערך מאפיין
ModificationTime
מחזיר או קובע את תאריך ושעת השינוי האחרונים.
public DateTime ModificationTime { get; set; }
ערך מאפיין
Name
מחזיר את שם הפריט בתוך הארכיון.
public string Name { get; protected set; }
ערך מאפיין
UncompressedSize
מחזיר את גודל הקובץ המקורי.
public ulong UncompressedSize { get; }
ערך מאפיין
שיטות
Extract(string, string)
מוציא את הפריט למערכת הקבצים לפי הנתיב שניתן.
public FileInfo Extract(string path, string password = null)
פרמטרים
path
string
הנתיב לקובץ היעד. אם הקובץ כבר קיים, הוא י overwritten.
password
string
סיסמה אופציונלית לפענוח.
מחזיר
מידע על הקובץ שהורכב.
דוגמאות
הוציאו שני פריטים מתוך ארכיון 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");
}
}
חריגות
path
הוא null.
למזמין אין את ההרשאה הנדרשת לגישה.
הpath
ריק, מכיל רק רווחים, או מכיל תווים לא חוקיים.
הגישה לקובץ path
נדחתה.
הנתיב, שם הקובץ, או שניהם חורגים מהאורך המרבי המוגדר על ידי המערכת. לדוגמה, במערכות מבוססות Windows, הנתיבים חייבים להיות פחות מ-248 תווים, ושמות הקבצים חייבים להיות פחות מ-260 תווים.
הקובץ בpath
מכיל נקודתיים (:) באמצע המחרוזת.
הקובץ לא נמצא.
הנתיב שניתן אינו חוקי, כגון שנמצא בכונן לא ממופה.
הקובץ כבר פתוח.
הנתונים פגומים. -או- אימות CRC או MAC נכשל עבור הפריט.
Extract(Stream, string)
מוציא את הפריט לזרם שניתן.
public void Extract(Stream destination, string password = null)
פרמטרים
destination
Stream
זרם היעד. חייב להיות ניתן לכתיבה.
password
string
סיסמה אופציונלית לפענוח.
דוגמאות
הוציאו פריט מתוך ארכיון zip עם סיסמה.
using (FileStream zipFile = File.Open("archive.zip", FileMode.Open))
{
using (Archive archive = new Archive(zipFile))
{
archive.Entries[0].Extract(httpResponseStream, "p@s$");
}
}
חריגות
הנתונים פגומים. -או- אימות CRC או MAC נכשל עבור הפריט.
המקור פגום או לא ניתן לקריאה.
destination
אינו תומך בכתיבה.
Open(string)
פותח את הפריט לצורך הוצאתו ומספק זרם עם תוכן הפריט המפורס.
public Stream Open(string password = null)
פרמטרים
password
string
סיסמה אופציונלית לפענוח.
מחזיר
הזרם המייצג את תוכן הפריט.
דוגמאות
שימוש:
Stream decompressed = entry.Open();
.NET 4.0 ומעלה - השתמש בשיטת Stream.CopyTo:
decompressed.CopyTo(httpResponse.OutputStream)
.NET 3.5 ומטה - העתק בתים ידנית:
byte[] buffer = new byte[8192];
int bytesRead;
while (0 < (bytesRead = decompressed.Read(buffer, 0, buffer.Length)))
fileStream.Write(buffer, 0, bytesRead);
```</p>
#### הערות
<p>קראו מהזרם כדי לקבל את התוכן המקורי של הקובץ. ראה את סעיף הדוגמאות.</p>
#### חריגות
[InvalidOperationException](https://learn.microsoft.com/dotnet/api/system.invalidoperationexception)
הארכיון במצב לא נכון.
### <a id="Aspose_Zip_ArchiveEntry_CompressionProgressed"></a> CompressionProgressed
מתרחש כאשר חלק מזרם הגולמי נדחס.
```csharp
public event EventHandler<progresseventargs> CompressionProgressed
סוג אירוע
EventHandler<ProgressEventArgs>
דוגמאות
archive.Entries[0].CompressionProgressed += (s, e) => { int percent = (int)((100 * (long)e.ProceededBytes) / entrySourceStream.Length); };
הערות
שולח האירוע הוא מופע של Aspose.Zip.ArchiveEntry.
ExtractionProgressed
מתרחש כאשר חלק מזרם הגולמי הופק.
public event EventHandler<progresseventargs> ExtractionProgressed
סוג אירוע
EventHandler<ProgressEventArgs>
דוגמאות
archive.Entries[0].ExtractionProgressed += (s, e) => { int percent = (int)((100 * e.ProceededBytes) / ((ArchiveEntry)s).UncompressedSize); };
הערות
שולח האירוע הוא מופע של Aspose.Zip.ArchiveEntry.