Class SharArchive
Namespace: Aspose.Zip.Shar
Assembly: Aspose.Zip.dll (25.1.0)
כיתה זו מייצגת קובץ ארכיון shar.
public class SharArchive : IDisposable
ירושה
מיישם
חברים נורשים
object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()
בונים
SharArchive()
מאתחל מופע חדש של הכיתה Aspose.Zip.Shar.SharArchive.
public SharArchive()
דוגמאות
הדוגמה הבאה מראה כיצד לדחוס קובץ.
using (var archive = new SharArchive())
{
archive.CreateEntry("first.bin", "data.bin");
archive.Save("archive.shar");
}
SharArchive(string)
מאתחל מופע חדש של הכיתה Aspose.Zip.Shar.SharArchive המוכן לדחיסה.
public SharArchive(string path)
פרמטרים
path
string
נתיב למקור של הארכיון.
חריגים
path
הוא null.
למתקשר אין את ההרשאה הנדרשת לגישה.
path
ריק, מכיל רק רווחים לבנים, או מכיל תווים לא חוקיים.
גישה לקובץ path
נדחתה.
path
המצויין, שם הקובץ, או שניהם עולים על האורך המרבי המוגדר על ידי המערכת. לדוגמה, בפלטפורמות מבוססות Windows, נתיבים חייבים להיות פחות מ-248 תווים, ושמות קבצים חייבים להיות פחות מ-260 תווים.
הקובץ בpath
מכיל נקודתיים (:) באמצע המחרוזת.
הקובץ לא נמצא.
הנתיב המצויין אינו חוקי, כמו להיות בכונן שאינו ממופה.
הקובץ כבר פתוח.
מאפיינים
Entries
מקבל את הכניסות של סוג Aspose.Zip.Shar.SharEntry המהוות את הארכיון.
public ReadOnlyCollection<sharentry> Entries { get; }
ערך המאפיין
ReadOnlyCollection<SharEntry>
שיטות
CreateEntries(string, bool)
מוסיף לארכיון את כל הקבצים והקטגוריות בצורה רקורסיבית בקטגוריה הנתונה.
public SharArchive CreateEntries(string sourceDirectory, bool includeRootDirectory = true)
פרמטרים
sourceDirectory
string
קטגוריה לדחיסה.
includeRootDirectory
bool
מציין אם לכלול את הקטגוריה השורשית עצמה או לא.
מחזיר
מופע של כניסת Shar.
דוגמאות
using (FileStream sharFile = File.Open("archive.shar", FileMode.Create))
{
using (var archive = new SharArchive())
{
archive.CreateEntries("C:\folder", false);
archive.Save(sharFile);
}
}
חריגים
sourceDirectory
הוא null.
למתקשר אין את ההרשאה הנדרשת לגישה לsourceDirectory
.
sourceDirectory
מכיל תווים לא חוקיים כמו “, <, >, או |.
הנתיב המצויין, שם הקובץ, או שניהם עולים על האורך המרבי המוגדר על ידי המערכת. לדוגמה, בפלטפורמות מבוססות Windows, נתיבים חייבים להיות פחות מ-248 תווים, ושמות קבצים חייבים להיות פחות מ-260 תווים. הנתיב המצויין, שם הקובץ, או שניהם ארוכים מדי.
sourceDirectory
מייצג קובץ, לא קטגוריה.
CreateEntries(DirectoryInfo, bool)
מוסיף לארכיון את כל הקבצים והקטגוריות בצורה רקורסיבית בקטגוריה הנתונה.
public SharArchive CreateEntries(DirectoryInfo directory, bool includeRootDirectory = true)
פרמטרים
directory
DirectoryInfo
קטגוריה לדחיסה.
includeRootDirectory
bool
מציין אם לכלול את הקטגוריה השורשית עצמה או לא.
מחזיר
מופע של כניסת Shar.
דוגמאות
using (FileStream sharFile = File.Open("archive.shar", FileMode.Create))
{
using (var archive = new SharArchive())
{
archive.CreateEntries(new DirectoryInfo("C:\folder"), false);
archive.Save(sharFile);
}
}
חריגים
directory
הוא null.
למתקשר אין את ההרשאה הנדרשת לגישה לdirectory
.
directory
מייצג קובץ, לא קטגוריה.
CreateEntry(string, FileInfo, bool)
יוצר כניסה בודדת בתוך הארכיון.
public SharEntry CreateEntry(string name, FileInfo fileInfo, bool openImmediately = false)
פרמטרים
name
string
שם הכניסה.
fileInfo
FileInfo
מטא-דאטה של קובץ או תיקייה שצריך לדחוס.
openImmediately
bool
נכון אם לפתוח את הקובץ מיד, אחרת לפתוח את הקובץ בעת שמירת הארכיון.
מחזיר
מופע של כניסת Shar.
דוגמאות
FileInfo fileInfo = new FileInfo("data.bin");
using (var archive = new SharArchive())
{
archive.CreateEntry("test.bin", fileInfo);
archive.Save("archive.shar");
}
הערות
אם הקובץ נפתח מיד עם פרמטר openImmediately
הוא נחסם עד שהארכיון יתפרק.
חריגים
name
הוא null.
name
ריק.
fileInfo
הוא null.
CreateEntry(string, string, bool)
יוצר כניסה בודדת בתוך הארכיון.
public SharEntry CreateEntry(string name, string sourcePath, bool openImmediately = false)
פרמטרים
name
string
שם הכניסה.
sourcePath
string
נתיב לקובץ שצריך לדחוס.
openImmediately
bool
נכון אם לפתוח את הקובץ מיד, אחרת לפתוח את הקובץ בעת שמירת הארכיון.
מחזיר
מופע של כניסת Shar.
דוגמאות
using (var archive = new SharArchive())
{
archive.CreateEntry("first.bin", "data.bin");
archive.Save("archive.shar");
}
הערות
שם הכניסה נקבע אך ורק בתוך פרמטר name
. שם הקובץ המוצג בפרמטר sourcePath
אינו משפיע על שם הכניסה.
אם הקובץ נפתח מיד עם פרמטר openImmediately
הוא נחסם עד שהארכיון יתפרק.
חריגים
sourcePath
הוא null.
למתקשר אין את ההרשאה הנדרשת לגישה.
sourcePath
ריק, מכיל רק רווחים לבנים, או מכיל תווים לא חוקיים. - או - שם הקובץ, כחלק מname
, עולה על 100 תווים.
גישה לקובץ sourcePath
נדחתה.
הנתיב המצויין sourcePath
, שם הקובץ, או שניהם עולים על האורך המרבי המוגדר על ידי המערכת. לדוגמה, בפלטפורמות מבוססות Windows, נתיבים חייבים להיות פחות מ-248 תווים, ושמות קבצים חייבים להיות פחות מ-260 תווים. - או - name
ארוך מדי עבור shar.
הקובץ בsourcePath
מכיל נקודתיים (:) באמצע המחרוזת.
CreateEntry(string, Stream)
יוצר כניסה בודדת בתוך הארכיון.
public SharEntry CreateEntry(string name, Stream source)
פרמטרים
name
string
שם הכניסה.
source
Stream
הזרם הקלט עבור הכניסה.
מחזיר
מופע של כניסת Shar.
דוגמאות
using (var archive = new SharArchive())
{
archive.CreateEntry("data.bin", File.OpenRead("data.bin"));
archive.Save("archive.shar");
}
חריגים
name
הוא null.
source
הוא null.
name
ריק.
DeleteEntry(SharEntry)
מסיר את ההתרחשות הראשונה של כניסה ספציפית מרשימת הכניסות.
public SharArchive DeleteEntry(SharEntry entry)
פרמטרים
entry
SharEntry
הכניסה להסרה מרשימת הכניסות.
מחזיר
מופע של כניסת Shar.
דוגמאות
כך תוכל להסיר את כל הכניסות פרט לאחרונה:
using (var archive = new SharArchive("archive.shar"))
{
while (archive.Entries.Count > 1)
archive.DeleteEntry(archive.Entries[0]);
archive.Save(outputSharFile);
}
חריגים
entry
הוא null.
DeleteEntry(int)
מסיר את הכניסה מרשימת הכניסות לפי אינדקס.
public SharArchive DeleteEntry(int entryIndex)
פרמטרים
entryIndex
int
האינדקס המבוסס על אפס של הכניסה להסרה.
מחזיר
הארכיון עם הכניסה שנמחקה.
דוגמאות
using (var archive = new SharArchive("two_files.shar"))
{
archive.DeleteEntry(0);
archive.Save("single_file.shar");
}
חריגים
entryIndex
קטן מ-0.-או- entryIndex
שווה או גדול מEntries
ספירה.
Dispose(bool)
מבצע משימות המוגדרות על ידי היישום הקשורות לשחרור, שחרור או אפס של משאבים לא מנוהלים.
protected virtual void Dispose(bool disposing)
פרמטרים
disposing
bool
אם יש לשחרר משאבים מנוהלים.
Dispose()
מבצע משימות המוגדרות על ידי היישום הקשורות לשחרור, שחרור או אפס של משאבים לא מנוהלים.
public void Dispose()
Save(string)
שומר את הארכיון לקובץ היעד שניתן.
public void Save(string destinationFileName)
פרמטרים
destinationFileName
string
הנתיב של הארכיון שצריך להיווצר. אם שם הקובץ המצויין מצביע על קובץ קיים, הוא יוחלף.
דוגמאות
using (var archive = new SharArchive())
{
archive.CreateEntry("entry1", "data.bin");
archive.Save("archive.shar");
}
הערות
אפשר לשמור ארכיון באותו נתיב שבו הוא נטען. עם זאת, זה לא מומלץ מכיוון שגישה זו משתמשת בהעתקה לקובץ זמני.
חריגים
destinationFileName
הוא מחרוזת באורך אפס, מכיל רק רווחים לבנים, או מכיל תו אחד או יותר לא חוקיים כפי שהוגדר על ידי System.IO.Path.InvalidPathChars.
destinationFileName
הוא null.
הנתיב המצויין destinationFileName
, שם הקובץ, או שניהם עולים על האורך המרבי המוגדר על ידי המערכת. לדוגמה, בפלטפורמות מבוססות Windows, נתיבים חייבים להיות פחות מ-248 תווים, ושמות קבצים חייבים להיות פחות מ-260 תווים.
הנתיב המצויין destinationFileName
אינו חוקי, (לדוגמה, הוא בכונן שאינו ממופה).
שגיאת קלט/פלט התרחשה בעת פתיחת הקובץ.
destinationFileName
ציין קובץ שהוא רק לקריאה וגישה אינה קריאה.-או- הנתיב ציין קטגוריה.-או- למתקשר אין את ההרשאה הנדרשת.
destinationFileName
נמצא בפורמט לא חוקי.
הקובץ לא נמצא.
Save(Stream)
שומר את הארכיון לזרם שניתן.
public void Save(Stream output)
פרמטרים
output
Stream
זרם היעד.
דוגמאות
using (FileStream sharFile = File.Open("archive.shar", FileMode.Create))
{
using (var archive = new SharArchive())
{
archive.CreateEntry("entry1", "data.bin");
archive.Save(sharFile);
}
}
הערות
output
חייב להיות ניתן לכתיבה.
חריגים
output
הוא null.
output
אינו ניתן לכתיבה. - או - output
הוא אותו זרם שממנו אנו שולפים.