Class SevenZipArchiveEntry

Class SevenZipArchiveEntry

Namespace: Aspose.Zip.SevenZip
Assembly: Aspose.Zip.dll (25.1.0)

מייצג קובץ בודד בתוך ארכיון 7z.

public abstract class SevenZipArchiveEntry : IArchiveFileEntry

ירושה

objectSevenZipArchiveEntry

נגזר

SevenZipArchiveEntryEncrypted, SevenZipArchiveEntryPlain

מממש

IArchiveFileEntry

חברים מורשים

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

הערות

המרה של מופע Aspose.Zip.SevenZip.SevenZipArchiveEntry ל-Aspose.Zip.SevenZip.SevenZipArchiveEntryEncrypted כדי לקבוע אם הרשומה מוצפנת או לא.

בונים

SevenZipArchiveEntry(SevenZipArchive, string, SevenZipCompressionSettings, Stream, FileAttributes, FileSystemInfo)

מאתחל מופע חדש של מחלקת Aspose.Zip.SevenZip.SevenZipArchiveEntry.

protected SevenZipArchiveEntry(SevenZipArchive parent, string name, SevenZipCompressionSettings compressionSettings, Stream source, FileAttributes fileAttributes, FileSystemInfo fileInfo = null)

פרמטרים

parent SevenZipArchive

name string

שם הרשומה.

compressionSettings SevenZipCompressionSettings

הגדרות לדחיסה או לפריקה.

source Stream

זרם עם נתוני הרשומה שצריך לדחוס או לפרוק.

fileAttributes FileAttributes

מאפיינים ממערכת הקבצים.

fileInfo FileSystemInfo

מידע על קובץ או תיקיה שעל בסיסם הרשומה.

חריגות

ArgumentException

הname הוא null או ריק.

מאפיינים

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; set; }

ערך המאפיין

Stream

UncompressedSize

מקבל את גודל הקובץ המקורי.

public ulong UncompressedSize { get; }

ערך המאפיין

ulong

שיטות

Extract(string, string)

מוציא את הרשומה למערכת הקבצים לפי הנתיב שסופק.

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

פרמטרים

path string

הנתיב לקובץ היעד. אם הקובץ כבר קיים, הוא יוחלף.

password string

סיסמה אופציונלית לפענוח.

מחזיר

FileInfo

מידע על הקובץ המורכב.

דוגמאות

using (var archive = new SevenZipArchive("archive.7z"))
{
    archive.Entries[0].Extract("data.bin");
}

חריגות

ArgumentNullException

path הוא null.

SecurityException

לקרוא אין את ההרשאות הנדרשות לגישה.

ArgumentException

הpath הוא ריק, מכיל רק רווחים, או מכיל תווים לא חוקיים.

UnauthorizedAccessException

הגישה לקובץ path נדחתה.

PathTooLongException

הpath, שם הקובץ, או שניהם חורגים מהאורך המרבי המוגדר על ידי המערכת. לדוגמה, בפלטפורמות מבוססות Windows, הנתיבים חייבים להיות פחות מ-248 תווים, ושמות הקבצים חייבים להיות פחות מ-260 תווים.

NotSupportedException

הקובץ בpath מכיל נקודתיים (:) באמצע המחרוזת.

InvalidDataException

הארכיון פגום.

Extract(Stream, string)

מוציא את הרשומה לזרם שסופק.

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

פרמטרים

destination Stream

זרם היעד. חייב להיות ניתן לכתיבה.

password string

סיסמה אופציונלית לפענוח.

דוגמאות

מוציאים רשומה מארכיון zip עם סיסמה.

using (var archive = new SevenZipArchive("archive.7z"))
{
    archive.Entries[0].Extract(httpResponseStream);
}

חריגות

ArgumentException

destination אינו תומך בכתיבה.

InvalidOperationException

הארכיון לא נפתח להוצאה. - או - הרשומה הזו היא תיקיה.

InvalidDataException

נתונים שגויים בתוך הרשומה.

FinalizeCompressedData(Stream, byte[])

כותב לזרם הפלט כל כותרות העוקבות אחרי נתוני הדחיסה.

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

פרמטרים

outputStream Stream

זרם הפלט עבור הרשומה.

encoderProperties byte[]

מאפיינים של המדחס.

מחזיר

int

מספר הבתים “הטכניים” שנוספו לאחר בלוק הנתונים המשמעותיים של הרשומה.

GetDestinationStream(Stream)

זרם היעד עבור הרשומה, עשוי להיות מעוטר.

protected abstract Stream GetDestinationStream(Stream outputStream)

פרמטרים

outputStream Stream

זרם הפלט עבור הרשומה.

מחזיר

Stream

זרם היעד לדחיסת הרשומה.

Open(string)

פותח את הרשומה להוצאה ומספק זרם עם תוכן הרשומה.

public Stream Open(string password = null)

פרמטרים

password string

סיסמה אופציונלית לפענוח.

מחזיר

Stream

הזרם המייצג את תוכן הרשומה.

דוגמאות

שימוש: 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>

#### הערות

קרא מהזרם כדי לקבל את התוכן המקורי של הקובץ. ראה את סעיף הדוגמאות.

#### חריגות

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

הארכיון לא נפתח להוצאה. - או - הרשומה הזו היא תיקיה.

 [InvalidDataException](https://learn.microsoft.com/dotnet/api/system.io.invaliddataexception)

נתונים שגויים בתוך הרשומה.

### <a id="Aspose_Zip_SevenZip_SevenZipArchiveEntry_CompressionProgressed"></a> CompressionProgressed

מתרחש כאשר חלק מנתוני הזרם הגולמיים דחוסים.

```csharp
public event EventHandler<progresseventargs> CompressionProgressed

סוג אירוע

EventHandler<ProgressEventArgs&gt;

דוגמאות

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

הערות

שולח האירוע הוא מופע של Aspose.Zip.SevenZip.SevenZipArchiveEntry.

לא מתרחש במצב רב-חוטי עבור רשומות LZMA2.

 Ελληνικά