Class XarFileEntry
Namespace: Aspose.Zip.Xar
Assembly: Aspose.Zip.dll (25.1.0)
מייצג פריט קובץ בתוך ארכיון xar.
public sealed class XarFileEntry : XarEntry, IArchiveFileEntry
ירושה
object ← XarEntry ← XarFileEntry
מיישם
חברים מורשים
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()
מאפיינים
Length
מקבל את אורך הפריט בבתים.
public long Length { get; }
ערך מאפיין
שיטות
Extract(string)
מוציא את הפריט למערכת הקבצים לפי הנתיב שסופק.
public FileInfo Extract(string path)
פרמטרים
path
string
הנתיב לקובץ היעד. אם הקובץ כבר קיים, הוא יימחק.
מחזיר
מידע על הקובץ שנוצר.
דוגמאות
using (var archive = new XarArchive("archive.xar"))
{
((XarFileEntry)archive.Entries[0]).Extract("data.bin");
}
חריגים
path
הוא null.
למטל לא יש את ההרשאה הנדרשת לגישה.
path
ריק, מכיל רק רווחים או מכיל תווים לא חוקיים.
גישה לקובץ path
נדחתה.
הנתיב path
, שם הקובץ, או שניהם חורגים מהאורך המרבי המוגדר על ידי המערכת. לדוגמה, בפלטפורמות מבוססות Windows, הנתיבים צריכים להיות פחות מ-248 תווים, ושמות הקבצים צריכים להיות פחות מ-260 תווים.
הקובץ בpath
מכיל נקודתיים (:) באמצע המחרוזת.
הארכיון פגום.
Extract(Stream)
מוציא את הפריט לזרם שסופק.
public void Extract(Stream destination)
פרמטרים
destination
Stream
זרם יעד. חייב להיות ניתן לכתיבה.
דוגמאות
מוציאים פריט מארכיון xar.
using (var archive = new XarArchive("archive.xar"))
{
((XarFileEntry)archive.Entries[0]).Extract(httpResponseStream);
}
חריגים
destination
אינו תומך בכתיבה.
הארכיון פגום.
Open()
פותח את הפריט להוצאה ומספק זרם עם תוכן הפריט.
public Stream Open()
מחזיר
הזרם שמייצג את תוכן הפריט.
דוגמאות
שימוש:
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>
#### הערות
קרא מהזרם כדי לקבל את תוכן הקובץ המקורי. ראה את סעיף הדוגמאות.
### <a id="Aspose_Zip_Xar_XarFileEntry_CompressionProgressed"></a> CompressionProgressed
מתרחש כאשר חלק מזרם הגולמי דחוס.
```csharp
public event EventHandler<progresseventargs> CompressionProgressed
סוג אירוע
EventHandler<ProgressEventArgs>
דוגמאות
archive.Entries.First().CompressionProgressed += (s, e) => { int percent = (int)((100 * (long)e.ProceededBytes) / entrySourceStream.Length); };
הערות
שולח האירוע הוא מופע של Aspose.Zip.Xar.XarFileEntry.