Class CpioArchive
Namespace: Aspose.Zip.Cpio
Assembly: Aspose.Zip.dll (25.1.0)
מחלקה זו מייצגת קובץ ארכיון cpio.
public class CpioArchive : IArchive, IDisposable
ירושה
מיישם
חברים ירושים
object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()
בונים
CpioArchive()
מאתחל מופע חדש של מחלקת Aspose.Zip.Cpio.CpioArchive.
public CpioArchive()
דוגמאות
הדוגמה הבאה מראה כיצד לדחוס קובץ.
using (var archive = new CpioArchive())
{
archive.CreateEntry("first.bin", "data.bin");
archive.Save("archive.cpio");
}
CpioArchive(Stream)
מאתחל מופע חדש של מחלקת Aspose.Zip.Cpio.CpioArchive ומרכיב רשימת כניסות שניתן לחלץ מהארכיון.
public CpioArchive(Stream sourceStream)
פרמטרים
sourceStream
Stream
מקור הארכיון. הוא חייב להיות נגיש לחיפוש.
דוגמאות
הדוגמה הבאה מראה כיצד לחלץ את כל הכניסות לתיקיה.
using (var archive = new CpioArchive(File.OpenRead("archive.cpio")))
{
archive.ExtractToDirectory("C:\extracted");
}
הערות
בונה זה אינו מפרק שום כניסה. ראה את שיטת Aspose.Zip.Cpio.CpioEntry.Open עבור פירוק.
חריגות
sourceStream
הוא null.
sourceStream
אינו נגיש לחיפוש.
sourceStream
אינו ארכיון cpio תקף.
CpioArchive(string)
מאתחל מופע חדש של מחלקת Aspose.Zip.Cpio.CpioArchive ומרכיב רשימת כניסות שניתן לחלץ מהארכיון.
public CpioArchive(string path)
פרמטרים
path
string
הנתיב לקובץ הארכיון.
דוגמאות
הדוגמה הבאה מראה כיצד לחלץ את כל הכניסות לתיקיה.
using (var archive = new CpioArchive("archive.cpio"))
{
archive.ExtractToDirectory("C:\extracted");
}
הערות
בונה זה אינו מפרק שום כניסה. ראה את שיטת Aspose.Zip.Cpio.CpioEntry.Open עבור פירוק.
חריגות
path
הוא null.
לקרוא אין את ההרשאה הנדרשת לגישה.
path
ריק, מכיל רק רווחים או מכיל תווים לא תקפים.
גישה לקובץ path
נדחתה.
הנתיב, שם הקובץ, או שניהם חורגים מאורך המקסימלי המוגדר על ידי המערכת. לדוגמה, בפלטפורמות מבוססות Windows, הנתיבים חייבים להיות פחות מ-248 תווים, ושמות קבצים חייבים להיות פחות מ-260 תווים.
הקובץ בpath
מכיל נקודתיים (:) באמצע המחרוזת.
הקובץ לא נמצא.
הנתיב שנבחר אינו תקף, כמו להיות בכונן שאינו ממופה.
הקובץ כבר פתוח.
מאפיינים
Entries
מקבל את הכניסות מסוג Aspose.Zip.Cpio.CpioEntry שמרכיבות את הארכיון.
public ReadOnlyCollection<cpioentry> Entries { get; }
ערך המאפיין
ReadOnlyCollection<CpioEntry>
שיטות
CreateEntries(string, bool)
מוסיף לארכיון את כל הקבצים והתיקיות באופן רקורסיבי בתיקיה הנתונה.
public CpioArchive CreateEntries(string sourceDirectory, bool includeRootDirectory = true)
פרמטרים
sourceDirectory
string
תיקיה לדחיסה.
includeRootDirectory
bool
מציין אם לכלול את התיקיה הראשית עצמה או לא.
מחזיר
מופע של כניסת Cpio.
דוגמאות
using (FileStream cpioFile = File.Open("archive.cpio", FileMode.Create))
{
using (var archive = new CpioArchive())
{
archive.CreateEntries("C:\folder", false);
archive.Save(cpioFile);
}
}
חריגות
sourceDirectory
הוא null.
לקרוא אין את ההרשאה הנדרשת לגישה sourceDirectory
.
sourceDirectory
מכיל תווים לא תקפים כמו “, <, >, או |.
הנתיב, שם הקובץ, או שניהם חורגים מאורך המקסימלי המוגדר על ידי המערכת. לדוגמה, בפלטפורמות מבוססות Windows, הנתיבים חייבים להיות פחות מ-248 תווים, ושמות קבצים חייבים להיות פחות מ-260 תווים. הנתיב, שם הקובץ, או שניהם ארוכים מדי.
sourceDirectory
מייצג קובץ, לא תיקיה.
CreateEntries(DirectoryInfo, bool)
מוסיף לארכיון את כל הקבצים והתיקיות באופן רקורסיבי בתיקיה הנתונה.
public CpioArchive CreateEntries(DirectoryInfo directory, bool includeRootDirectory = true)
פרמטרים
directory
DirectoryInfo
תיקיה לדחיסה.
includeRootDirectory
bool
מציין אם לכלול את התיקיה הראשית עצמה או לא.
מחזיר
מופע של כניסת Cpio.
דוגמאות
using (FileStream cpioFile = File.Open("archive.cpio", FileMode.Create))
{
using (var archive = new CpioArchive())
{
archive.CreateEntries(new DirectoryInfo("C:\folder"), false);
archive.Save(cpioFile);
}
}
חריגות
directory
הוא null.
לקרוא אין את ההרשאה הנדרשת לגישה directory
.
directory
מייצג קובץ, לא תיקיה.
CreateEntry(string, FileInfo, bool)
יוצר כניסה בודדת בתוך הארכיון.
public CpioEntry CreateEntry(string name, FileInfo fileInfo, bool openImmediately = false)
פרמטרים
name
string
שם הכניסה.
fileInfo
FileInfo
המטא-דאטה של הקובץ או התיקיה שצריכה להיות דחוסה.
openImmediately
bool
נכון אם לפתוח את הקובץ מיד, אחרת לפתוח את הקובץ בעת שמירת הארכיון.
מחזיר
מופע של כניסת Cpio.
דוגמאות
FileInfo fileInfo = new FileInfo("data.bin");
using (var archive = new CpioArchive())
{
archive.CreateEntry("test.bin", fileInfo);
archive.Save("archive.cpio");
}
הערות
אם הקובץ נפתח מיד עם פרמטר openImmediately
, הוא נשאר חסום עד שהארכיון יפונה.
חריגות
name
הוא null.
name
ריק.
fileInfo
הוא null.
CreateEntry(string, string, bool)
יוצר כניסה בודדת בתוך הארכיון.
public CpioEntry CreateEntry(string name, string sourcePath, bool openImmediately = false)
פרמטרים
name
string
שם הכניסה.
sourcePath
string
נתיב לקובץ שצריך להיות דחוס.
openImmediately
bool
נכון אם לפתוח את הקובץ מיד, אחרת לפתוח את הקובץ בעת שמירת הארכיון.
מחזיר
מופע של כניסת Cpio.
דוגמאות
using (var archive = new CpioArchive())
{
archive.CreateEntry("first.bin", "data.bin");
archive.Save("archive.cpio");
}
הערות
שם הכניסה נקבע אך ורק בפרמטר name
. שם הקובץ שניתן בפרמטר sourcePath
אינו משפיע על שם הכניסה.
אם הקובץ נפתח מיד עם פרמטר openImmediately
, הוא נשאר חסום עד שהארכיון יפונה.
חריגות
sourcePath
הוא null.
לקרוא אין את ההרשאה הנדרשת לגישה.
sourcePath
ריק, מכיל רק רווחים או מכיל תווים לא תקפים. - או - שם הקובץ, כחלק מname
, חורג מ-100 תווים.
גישה לקובץ sourcePath
נדחתה.
הנתיב, שם הקובץ, או שניהם חורגים מאורך המקסימלי המוגדר על ידי המערכת. לדוגמה, בפלטפורמות מבוססות Windows, הנתיבים חייבים להיות פחות מ-248 תווים, ושמות קבצים חייבים להיות פחות מ-260 תווים. - או - name
ארוך מדי עבור cpio.
הקובץ בsourcePath
מכיל נקודתיים (:) באמצע המחרוזת.
CreateEntry(string, Stream)
יוצר כניסה בודדת בתוך הארכיון.
public CpioEntry CreateEntry(string name, Stream source)
פרמטרים
name
string
שם הכניסה.
source
Stream
הזרם הקלט עבור הכניסה.
מחזיר
מופע של כניסת Cpio.
דוגמאות
using (var archive = new CpioArchive())
{
archive.CreateEntry("data.bin", File.OpenRead("data.bin"));
archive.Save("archive.cpio");
}
חריגות
name
הוא null.
source
הוא null.
name
ריק.
DeleteEntry(CpioEntry)
מסיר את המופע הראשון של כניסה מסוימת מרשימת הכניסות.
public CpioArchive DeleteEntry(CpioEntry entry)
פרמטרים
entry
CpioEntry
הכניסה להסרה מרשימת הכניסות.
מחזיר
מופע של כניסת Cpio.
דוגמאות
כך ניתן להסיר את כל הכניסות פרט לאחרונה:
using (var archive = new CpioArchive("archive.cpio"))
{
while (archive.Entries.Count > 1)
archive.DeleteEntry(archive.Entries[0]);
archive.Save(outputCpioFile);
}
חריגות
entry
הוא null.
DeleteEntry(int)
מסיר את הכניסה מרשימת הכניסות לפי אינדקס.
public CpioArchive DeleteEntry(int entryIndex)
פרמטרים
entryIndex
int
האינדקס של הכניסה להסרה (מתחיל מ-0).
מחזיר
הארכיון עם הכניסה שהוסרה.
דוגמאות
using (var archive = new CpioArchive("two_files.cpio"))
{
archive.DeleteEntry(0);
archive.Save("single_file.cpio");
}
חריגות
entryIndex
קטן מ-0. - או - entryIndex
שווה או גדול מEntries
count.
Dispose()
מבצע משימות המוגדרות על ידי היישום הקשורות לשחרור, שחרור או איפוס של משאבים לא מנוהלים.
public void Dispose()
Dispose(bool)
מבצע משימות המוגדרות על ידי היישום הקשורות לשחרור, שחרור או איפוס של משאבים לא מנוהלים.
protected virtual void Dispose(bool disposing)
פרמטרים
disposing
bool
אם משאבים מנוהלים צריכים להיות משוחררים.
ExtractToDirectory(string)
מחלץ את כל הקבצים בארכיון לתיקיה שניתנה.
public void ExtractToDirectory(string destinationDirectory)
פרמטרים
destinationDirectory
string
הנתיב לתיקיה שבה יש לשים את הקבצים המוצאים.
דוגמאות
using (var archive = new CpioArchive("archive.cpio"))
{
archive.ExtractToDirectory("C:\extracted");
}
הערות
אם התיקיה אינה קיימת, היא תיווצר.
חריגות
path הוא null
הנתיב, שם הקובץ, או שניהם חורגים מאורך המקסימלי המוגדר על ידי המערכת. לדוגמה, בפלטפורמות מבוססות Windows, הנתיבים חייבים להיות פחות מ-248 תווים ושמות קבצים חייבים להיות פחות מ-260 תווים.
לקרוא אין את ההרשאה הנדרשת לגישה לתיקיה הקיימת.
אם התיקיה אינה קיימת, הנתיב מכיל תו נקודתיים (:) שאינו חלק מתווית הכונן (“C:").
path הוא מחרוזת באורך אפס, מכיל רק רווחים או מכיל תו או יותר לא תקפים. ניתן לבדוק תווים לא תקפים באמצעות המתודה System.IO.Path.GetInvalidPathChars. - או - path הוא מקדים, או מכיל, רק תו נקודתיים (:).
התיקיה שנבחרה בנתיב היא קובץ. - או - שם הרשת אינו ידוע.
Save(string, CpioFormat)
שומר את הארכיון לקובץ היעד שניתן.
public void Save(string destinationFileName, CpioFormat cpioFormat = CpioFormat.OldAscii)
פרמטרים
destinationFileName
string
הנתיב של הארכיון שצריך להיווצר. אם שם הקובץ שנבחר מצביע על קובץ קיים, הוא יוחלף.
cpioFormat
CpioFormat
מגדיר את פורמט הכותרת של cpio.
דוגמאות
using (var archive = new CpioArchive())
{
archive.CreateEntry("entry1", "data.bin");
archive.Save("archive.cpio");
}
הערות
ניתן לשמור ארכיון לאותו נתיב שממנו הוא נטען. עם זאת, זה לא מומלץ כי גישה זו משתמשת בהעתקה לקובץ זמני.
חריגות
destinationFileName
הוא מחרוזת באורך אפס, מכיל רק רווחים, או מכיל תו או יותר לא תקפים כפי שהוגדר על ידי System.IO.Path.InvalidPathChars.
destinationFileName
הוא null.
הנתיב destinationFileName
, שם הקובץ, או שניהם חורגים מאורך המקסימלי המוגדר על ידי המערכת. לדוגמה, בפלטפורמות מבוססות Windows, הנתיבים חייבים להיות פחות מ-248 תווים, ושמות קבצים חייבים להיות פחות מ-260 תווים.
הנתיב destinationFileName
אינו תקף, (למשל, הוא נמצא בכונן שאינו ממופה).
שגיאת קלט/פלט התרחשה בעת פתיחת הקובץ.
destinationFileName
מציין קובץ שהוא רק לקריאה ולא ניתן לגישה לקריאה. - או - הנתיב מציין תיקיה. - או - לקרוא אין את ההרשאה הנדרשת.
destinationFileName
נמצא בפורמט לא תקף.
Save(Stream, CpioFormat)
שומר את הארכיון לזרם שניתן.
public void Save(Stream output, CpioFormat cpioFormat = CpioFormat.OldAscii)
פרמטרים
output
Stream
זרם היעד.
cpioFormat
CpioFormat
מגדיר את פורמט הכותרת של cpio.
דוגמאות
using (FileStream cpioFile = File.Open("archive.cpio", FileMode.Create))
{
using (var archive = new CpioArchive())
{
archive.CreateEntry("entry1", "data.bin");
archive.Save(cpioFile);
}
}
הערות
output
חייב להיות נכתב.
חריגות
output
הוא null.
output
אינו נכתב. - או - output
הוא אותו זרם שממנו אנו שולפים.
- או -
אין אפשרות לשמור את הארכיון בפורמט cpioFormat
בשל הגבלות בפורמט.
SaveGzipped(Stream, CpioFormat)
שומר את הארכיון לזרם עם דחיסת gzip.
public void SaveGzipped(Stream output, CpioFormat cpioFormat = CpioFormat.OldAscii)
פרמטרים
output
Stream
זרם היעד.
cpioFormat
CpioFormat
מגדיר את פורמט הכותרת של cpio.
דוגמאות
using (FileStream result = File.OpenWrite("result.cpio.gz"))
{
using (FileStream source = File.Open("data.bin", FileMode.Open, FileAccess.Read))
{
using (var archive = new CpioArchive())
{
archive.CreateEntry("entry.bin", source);
archive.SaveGzipped(result);
}
}
}
הערות
output
חייב להיות נכתב.
חריגות
output
הוא null.
output
אינו נכתב.
SaveGzipped(string, CpioFormat)
שומר את הארכיון לקובץ לפי נתיב עם דחיסת gzip.
public void SaveGzipped(string path, CpioFormat cpioFormat = CpioFormat.OldAscii)
פרמטרים
path
string
הנתיב של הארכיון שצריך להיווצר. אם שם הקובץ שנבחר מצביע על קובץ קיים, הוא יוחלף.
cpioFormat
CpioFormat
מגדיר את פורמט הכותרת של cpio.
דוגמאות
using (FileStream source = File.Open("data.bin", FileMode.Open, FileAccess.Read))
{
using (var archive = new CpioArchive())
{
archive.CreateEntry("entry.bin", source);
archive.SaveGzipped("result.cpio.gz");
}
}
SaveLZMACompressed(Stream, CpioFormat)
שומר את הארכיון לזרם עם דחיסת LZMA.
public void SaveLZMACompressed(Stream output, CpioFormat cpioFormat = CpioFormat.OldAscii)
פרמטרים
output
Stream
זרם היעד.
cpioFormat
CpioFormat
מגדיר את פורמט הכותרת של cpio.
דוגמאות
using (FileStream result = File.OpenWrite("result.cpio.lzma"))
{
using (FileStream source = File.Open("data.bin", FileMode.Open, FileAccess.Read))
{
using (var archive = new CpioArchive())
{
archive.CreateEntry("entry.bin", source);
archive.SaveLZMACompressed(result);
}
}
}
הערות
output
חייב להיות נכתב.
SaveLZMACompressed(string, CpioFormat)
שומר את הארכיון לקובץ לפי נתיב עם דחיסת lzma.
public void SaveLZMACompressed(string path, CpioFormat cpioFormat = CpioFormat.OldAscii)
פרמטרים
path
string
הנתיב של הארכיון שצריך להיווצר. אם שם הקובץ שנבחר מצביע על קובץ קיים, הוא יוחלף.
cpioFormat
CpioFormat
מגדיר את פורמט הכותרת של cpio.
דוגמאות
using (FileStream source = File.Open("data.bin", FileMode.Open, FileAccess.Read))
{
using (var archive = new CpioArchive())
{
archive.CreateEntry("entry.bin", source);
archive.SaveLZMACompressed("result.cpio.lzma");
}
}
הערות
חשוב: הארכיון של cpio מורכב ואחר כך נדחס בשיטה זו, תוכנו נשמר פנימית. יש להיזהר מצריכת זיכרון.
SaveLzipped(Stream, CpioFormat)
שומר את הארכיון לזרם עם דחיסת lzip.
public void SaveLzipped(Stream output, CpioFormat cpioFormat = CpioFormat.OldAscii)
פרמטרים
output
Stream
זרם היעד.
cpioFormat
CpioFormat
מגדיר את פורמט הכותרת של cpio.
דוגמאות
using (FileStream result = File.OpenWrite("result.cpio.lz"))
{
using (FileStream source = File.Open("data.bin", FileMode.Open, FileAccess.Read))
{
using (var archive = new CpioArchive())
{
archive.CreateEntry("entry.bin", source);
archive.SaveGzipped(result);
}
}
}
הערות
output
חייב להיות נכתב.
חריגות
output
הוא null.
output
אינו נכתב.
SaveLzipped(string, CpioFormat)
שומר את הארכיון לקובץ לפי נתיב עם דחיסת lzip.
public void SaveLzipped(string path, CpioFormat cpioFormat = CpioFormat.OldAscii)
פרמטרים
path
string
הנתיב של הארכיון שצריך להיווצר. אם שם הקובץ שנבחר מצביע על קובץ קיים, הוא יוחלף.
cpioFormat
CpioFormat
מגדיר את פורמט הכותרת של cpio.
דוגמאות
using (FileStream source = File.Open("data.bin", FileMode.Open, FileAccess.Read))
{
using (var archive = new CpioArchive())
{
archive.CreateEntry("entry.bin", source);
archive.SaveGzipped("result.cpio.lz");
}
}
SaveXzCompressed(Stream, CpioFormat, XzArchiveSettings)
שומר את הארכיון לזרם עם דחיסת xz.
public void SaveXzCompressed(Stream output, CpioFormat cpioFormat = CpioFormat.OldAscii, XzArchiveSettings settings = null)
פרמטרים
output
Stream
זרם היעד.
cpioFormat
CpioFormat
מגדיר את פורמט הכותרת של cpio.
settings
XzArchiveSettings
סט של הגדרות לארכיון xz מסוים: גודל מילון, גודל בלוק, סוג בדיקה.
דוגמאות
using (FileStream result = File.OpenWrite("result.cpio.xz"))
{
using (FileStream source = File.Open("data.bin", FileMode.Open, FileAccess.Read))
{
using (var archive = new CpioArchive())
{
archive.CreateEntry("entry.bin", source);
archive.SaveXzCompressed(result);
}
}
}
הערות
output
חייב להיות נכתב.
חריגות
output
הוא null.
output
אינו נכתב.
SaveXzCompressed(string, CpioFormat, XzArchiveSettings)
שומר את הארכיון לנתיב עם דחיסת xz.
public void SaveXzCompressed(string path, CpioFormat cpioFormat = CpioFormat.OldAscii, XzArchiveSettings settings = null)
פרמטרים
path
string
הנתיב של הארכיון שצריך להיווצר. אם שם הקובץ שנבחר מצביע על קובץ קיים, הוא יוחלף.
cpioFormat
CpioFormat
מגדיר את פורמט הכותרת של cpio.
settings
XzArchiveSettings
סט של הגדרות לארכיון xz מסוים: גודל מילון, גודל בלוק, סוג בדיקה.
דוגמאות
using (FileStream source = File.Open("data.bin", FileMode.Open, FileAccess.Read))
{
using (var archive = new CpioArchive())
{
archive.CreateEntry("entry.bin", source);
archive.SaveXzCompressed("result.cpio.xz");
}
}
SaveZCompressed(Stream, CpioFormat)
שומר את הארכיון לזרם עם דחיסת Z.
public void SaveZCompressed(Stream output, CpioFormat cpioFormat = CpioFormat.OldAscii)
פרמטרים
output
Stream
זרם היעד.
cpioFormat
CpioFormat
מגדיר את פורמט הכותרת של cpio.
דוגמאות
using (FileStream result = File.OpenWrite("result.cpio.Z"))
{
using (FileStream source = File.Open("data.bin", FileMode.Open, FileAccess.Read))
{
using (var archive = new CpioArchive())
{
archive.CreateEntry("entry.bin", source);
archive.SaveZCompressed(result);
}
}
}
הערות
output
חייב להיות נכתב.
חריגות
output
הוא null.
output
אינו נכתב.
SaveZCompressed(string, CpioFormat)
שומר את הארכיון לנתיב עם דחיסת Z.
public void SaveZCompressed(string path, CpioFormat cpioFormat = CpioFormat.OldAscii)
פרמטרים
path
string
הנתיב של הארכיון שצריך להיווצר. אם שם הקובץ שנבחר מצביע על קובץ קיים, הוא יוחלף.
cpioFormat
CpioFormat
מגדיר את פורמט הכותרת של cpio.
דוגמאות
using (FileStream source = File.Open("data.bin", FileMode.Open, FileAccess.Read))
{
using (var archive = new CpioArchive())
{
archive.CreateEntry("entry.bin", source);
archive.SaveZCompressed("result.cpio.Z");
}
}
SaveZstandard(Stream, CpioFormat)
שומר את הארכיון לזרם עם דחיסת Zstandard.
public void SaveZstandard(Stream output, CpioFormat cpioFormat = CpioFormat.OldAscii)
פרמטרים
output
Stream
זרם היעד.
cpioFormat
CpioFormat
מגדיר את פורמט הכותרת של cpio.
דוגמאות
using (FileStream result = File.OpenWrite("result.cpio.zst"))
{
using (FileStream source = File.Open("data.bin", FileMode.Open, FileAccess.Read))
{
using (var archive = new CpioArchive())
{
archive.CreateEntry("entry.bin", source);
archive.SaveZstandard(result);
}
}
}
הערות
output
חייב להיות נכתב.
חריגות
output
הוא null.
output
אינו נכתב.
SaveZstandard(string, CpioFormat)
שומר את הארכיון לקובץ לפי נתיב עם דחיסת Zstandard.
public void SaveZstandard(string path, CpioFormat cpioFormat = CpioFormat.OldAscii)
פרמטרים
path
string
הנתיב של הארכיון שצריך להיווצר. אם שם הקובץ שנבחר מצביע על קובץ קיים, הוא יוחלף.
cpioFormat
CpioFormat
מגדיר את פורמט הכותרת של cpio.
דוגמאות
using (FileStream source = File.Open("data.bin", FileMode.Open, FileAccess.Read))
{
using (var archive = new CpioArchive())
{
archive.CreateEntry("entry.bin", source);
archive.SaveZstandard("result.cpio.zst");
}
}