Class SevenZipArchive
اسم الفضاء : Aspose.Zip.SevenZip تجميع: Aspose.Zip.dll (25.5.0)
هذه الفئة تمثل ملف الأرشيف 7z. استخدمها لتكوين واستخراج الأرشيف 7z.
public class SevenZipArchive : IArchive, IDisposable
Inheritance
Implements
الأعضاء الموروثين
object.GetType() , object.MemberwiseClone() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()
Constructors
SevenZipArchive(SevenZipEntrySettings)
يبدأ عرضًا جديدًا من فئة Aspose.Zip.SevenZip.SevenZipArchive مع إعدادات اختيارية لإدخاله.
public SevenZipArchive(SevenZipEntrySettings newEntrySettings = null)
Parameters
newEntrySettings
SevenZipEntrySettings
إعدادات الضغط والتشفير المستخدمة لإضافة عناصر Aspose.Zip.SevenZip.SevenZipArchiveEntry حديثا.إذا لم يتم تحديدها ، سيتم استخدام ضغط LZMA دون التشفير.
Examples
يظهر المثال التالي كيفية ضغط ملف واحد مع الإعدادات الافتراضية: LZMA الضغط دون التشفير.
using (FileStream sevenZipFile = File.Open("archive.7z", FileMode.Create))
{
using (var archive = new SevenZipArchive())
{
archive.CreateEntry("data.bin", "file.dat");
archive.Save(sevenZipFile);
}
}
SevenZipArchive(الشبكة، string)
يبدأ مثالًا جديدًا من فئة Aspose.Zip.SevenZip.SevenZipArchive ويخلق قائمة إدخال يمكن استخراجها من الأرشيف.
public SevenZipArchive(Stream sourceStream, string password = null)
Parameters
sourceStream
Stream
مصدر الأرشيف .
password
string
كلمة المرور الاختيارية للتشفير.إذا تم تشفير أسماء الملفات، فإنه يجب أن يكون موجودا.
Examples
using (SevenZipArchive archive = new SevenZipArchive(File.OpenRead("archive.7z")))
{
archive.ExtractToDirectory("C:\\extracted");
}
Remarks
هذا البناء لا يقطع أي إدخال. انظر Aspose.Zip.SevenZip.SevenZipArchive.ExtractToDirectory(System.String،System.String) طريقة للقطع.
Exceptions
sourceStream’ is not seekable.
sourceStream’ is null.
يحتوي الأرشيف على أكثر من رمز واحد.الآن يتم دعم ضغط LZMA فقط.
SevenZipArchive(ستيفن، ستيفن)
يبدأ مثالًا جديدًا من فئة Aspose.Zip.SevenZip.SevenZipArchive ويخلق قائمة إدخال يمكن استخراجها من الأرشيف.
public SevenZipArchive(string path, string password = null)
Parameters
path
string
المسار الكامل أو المسار النسبي إلى ملف الأرشيف.
password
string
كلمة المرور الاختيارية للتشفير.إذا تم تشفير أسماء الملفات، فإنه يجب أن يكون موجودا.
Examples
using (SevenZipArchive archive = new SevenZipArchive("archive.7z"))
{
archive.ExtractToDirectory("C:\\extracted");
}
Remarks
هذا البناء لا يقطع أي إدخال. انظر Aspose.Zip.SevenZip.SevenZipArchive.ExtractToDirectory(System.String،System.String) طريقة للقطع.
Exceptions
path’ is null.
لا يحصل المتصل على إذن الوصول المطلوب.
الطريق " فارغ ، يحتوي على مساحات بيضاء فقط ، أو يحتوي على أحرف غير صحيحة.
يتم رفض الوصول إلى ملف path".
على سبيل المثال ، على المنصات المستندة إلى Windows ، يجب أن تكون المسارات أقل من 248 حرفًا ، ويجب أن يكون اسم الملف أقل من 260 حرفًا.
ملف في path’ يحتوي على عمود (:) في وسط السلسلة.
لم يتم العثور على الملف.
المسار المحدد غير صالح ، على سبيل المثال ، على محرك أقراص غير مسجلة.
الملف مفتوح بالفعل.
SevenZipArchive(الستار[ ]الـ String)
يبدأ مثالًا جديدًا من فئة Aspose.Zip.SevenZip.SevenZipArchive من الأرشيف متعدد الحجم 7z ويجمع قائمة إدخالات يمكن استخراجها من الأرشيف.
public SevenZipArchive(string[] parts, string password = null)
Parameters
parts
string
[ ]
خطوات إلى كل قطعة من الأرشيف متعدد الحجم 7z الامتثال للترتيب
password
string
كلمة المرور الاختيارية للتشفير.إذا تم تشفير أسماء الملفات، فإنه يجب أن يكون موجودا.
Examples
using (SevenZipArchive archive = new SevenZipArchive(new string[] { "multi.7z.001", "multi.7z.002", "multi.7z.003" }))
{
archive.ExtractToDirectory("C:\\extracted");
}
Exceptions
parts’ is null.
parts’ has no entries.
لا يحصل المتصل على إذن الوصول المطلوب.
المسار إلى ملف فارغ ، يحتوي فقط على مساحات بيضاء ، أو يحتوي على أحرف غير صحيحة.
يتم رفض الوصول إلى ملف.
المسار المحدد إلى جزء، اسم الملف، أو كلاهما يتجاوز الحد الأقصى الذي يحدده النظام.على سبيل المثال، على منصات ويندوز، يجب أن تكون المسارات أقل من 248 حرف، وأسماء الملفات يجب أن تكون أقل من 260 حرف.
ملف على مسار يحتوي على عمود (:) في وسط السلسلة.
Properties
Entries
يحصل على إدخالات من Aspose.Zip.SevenZip.SevenZipArchiveEntry النوع الذي يشكل الأرشيف.
public ReadOnlyCollection<sevenziparchiveentry> Entries { get; }
قيمة الممتلكات
ReadOnlyCollection <؛ SevenZipArchiveEntry >
NewEntrySettings
إعدادات الضغط والتشفير المستخدمة لإضافة عناصر Aspose.Zip.SevenZip.SevenZipArchiveEntry حديثا.
public SevenZipEntrySettings NewEntrySettings { get; }
قيمة الممتلكات
Methods
CreateEntries(أرشيف الوسم : Bool)
إضافة إلى الأرشيف جميع الملفات والمجلدات بشكل متكرر في الدليل المحدد.
public SevenZipArchive CreateEntries(DirectoryInfo directory, bool includeRootDirectory = true)
Parameters
directory
DirectoryInfo
فيديوهات متعلقة بـ Compress
includeRootDirectory
bool
إشارة إلى ما إذا كان لإدراج الدليل الجذر نفسه أم لا.
Returns
الأرشيف مع الإدخالات المكونة.
Examples
using (SevenZipArchive archive = new SevenZipArchive())
{
DirectoryInfo folder = new DirectoryInfo("C:\folder");
archive.CreateEntries(folder);
archive.Save("folder.7z");
}
Exceptions
المسار إلى directory’ غير صالح، على سبيل المثال، على محرك أقراص غير مسجلة.
لا يحصل المتصل على السماح المطلوب للوصول إلى directory".
CreateEntries(البول، البول)
إضافة إلى الأرشيف جميع الملفات والمجلدات بشكل متكرر في الدليل المحدد.
public SevenZipArchive CreateEntries(string sourceDirectory, bool includeRootDirectory = true)
Parameters
sourceDirectory
string
فيديوهات متعلقة بـ Compress
includeRootDirectory
bool
إشارة إلى ما إذا كان لإدراج الدليل الجذر نفسه أم لا.
Returns
الأرشيف مع الإدخالات المكونة.
Examples
قم بتجميع الأرشيف 7z مع ضغط LZMA2.
using (SevenZipArchive archive = new SevenZipArchive(new SevenZipEntrySettings(new SevenZipLZMACompressionSettings())))
{
archive.CreateEntries("C:\folder");
archive.Save("folder.7z");
}
CreateEntry(صفحة, FileInfo, bool, SevenZipEntrySettings)
إنشاء إدخال واحد داخل الأرشيف.
public SevenZipArchiveEntry CreateEntry(string name, FileInfo fileInfo, bool openImmediately = false, SevenZipEntrySettings newEntrySettings = null)
Parameters
name
string
اسم الدخول .
fileInfo
FileInfo
سيتم ضغط البيانات الميتا من الملفات.
openImmediately
bool
صحيح، إذا قمت بفتح الملف على الفور، وإلا فتح الملف على حفظ الأرشيف.
newEntrySettings
SevenZipEntrySettings
إعدادات الضغط والتشفير المستخدمة لإضافة Aspose.Zip.SevenZip.SevenZipArchiveEntry العنصر.
Returns
7 إدخال زيب.
Examples
قم بتجميع الأرشيف مع الإدخالات المشفرة مع كلمات المرور المختلفة كل منها.
using (FileStream sevenZipFile = File.Open("archive.7z", FileMode.Create))
{
FileInfo fi1 = new FileInfo("data1.bin");
FileInfo fi2 = new FileInfo("data2.bin");
FileInfo fi3 = new FileInfo("data3.bin");
using (var archive = new SevenZipArchive())
{
archive.CreateEntry("entry1.bin", fi1, false, new SevenZipEntrySettings(new SevenZipStoreCompressionSettings(), new SevenZipAESEncryptionSettings("test1")));
archive.CreateEntry("entry2.bin", fi2, false, new SevenZipEntrySettings(new SevenZipStoreCompressionSettings(), new SevenZipAESEncryptionSettings("test2")));
archive.CreateEntry("entry3.bin", fi3, false, new SevenZipEntrySettings(new SevenZipStoreCompressionSettings(), new SevenZipAESEncryptionSettings("test3")));
archive.Save(sevenZipFile);
}
}
Remarks
يتم تعيين اسم الإدخال فقط داخل المعلم.لا يؤثر اسم الملف المقدمة في المعلم على اسم الإدخال.
إذا تم فتح الملف على الفور مع المعيار فإنه يتم حظرها حتى يتم حفظ الأرشيف.
Exceptions
fileInfo’ is read-only or is a directory.
المسار المحدد غير صالح ، على سبيل المثال ، على محرك أقراص غير مسجلة.
الملف مفتوح بالفعل.
CreateEntry(سلاسل, سلاسل, SevenZipEntrySettings, FileSystemInfo)
إنشاء إدخال واحد داخل الأرشيف.
public SevenZipArchiveEntry CreateEntry(string name, Stream source, SevenZipEntrySettings newEntrySettings, FileSystemInfo fileInfo)
Parameters
name
string
اسم الدخول .
source
Stream
تدفق الدخول للمدخل.
newEntrySettings
SevenZipEntrySettings
إعدادات الضغط والتشفير المستخدمة لإضافة Aspose.Zip.SevenZip.SevenZipArchiveEntry العنصر.
fileInfo
FileSystemInfo
سيتم ضغط البيانات الميتا من الملف أو المجلد.
Returns
إدخال سبعة زيب.
Examples
قم بتجميع الأرشيف مع LZMA2 المضغوط إدخال مشفر.
using (FileStream sevenZipFile = File.Open("archive.7z", FileMode.Create))
{
using (var archive = new SevenZipArchive())
{
archive.CreateEntry("entry1.bin", new MemoryStream(new byte[] {0x00, 0xFF}), new SevenZipEntrySettings(new SevenZipLZMA2CompressionSettings(), new SevenZipAESEncryptionSettings("test1")), new FileInfo("data1.bin"));
archive.Save(sevenZipFile);
}
}
Remarks
يتم تعيين اسم الإدخال فقط داخل المعلم.لا يؤثر اسم الملف المقدمة في المعلم على اسم الإدخال.
يمكن الإشارة إلى System.IO.DirectoryInfo إذا كان الإدخال هو الدليل.
Exceptions
كل من source’ و
fileInfo’ صفر أو
source’ صفر و
fileInfo’ يمثل الدليل.
CreateEntry(أضف تعليق حول SevenZipEntrySettings)
إنشاء إدخال واحد داخل الأرشيف.
public SevenZipArchiveEntry CreateEntry(string name, Stream source, SevenZipEntrySettings newEntrySettings = null)
Parameters
name
string
اسم الدخول .
source
Stream
تدفق الدخول للمدخل.
newEntrySettings
SevenZipEntrySettings
إعدادات الضغط والتشفير المستخدمة لإضافة Aspose.Zip.SevenZip.SevenZipArchiveEntry العنصر.
Returns
إدخال ZIP.
Examples
تركيب الأرشيف 7z مع LZMA2 ضغط وتشفير جميع الإدخالات.
using (var archive = new SevenZipArchive(new SevenZipEntrySettings(new SevenZipLZMA2CompressionSettings(), new SevenZipAESEncryptionSettings("p@s$"))))
{
archive.CreateEntry("data.bin", new MemoryStream(new byte[] {0x00, 0xFF} ));
archive.Save("archive.7z");
}
CreateEntry(الحبل، الحبل، الحبل، SevenZipEntrySettings)
إنشاء إدخال واحد داخل الأرشيف.
public SevenZipArchiveEntry CreateEntry(string name, string path, bool openImmediately = false, SevenZipEntrySettings newEntrySettings = null)
Parameters
name
string
اسم الدخول .
path
string
اسم الملف الجديد، أو اسم الملف النسبي الذي سيتم ضغطه.
openImmediately
bool
صحيح، إذا قمت بفتح الملف على الفور، وإلا فتح الملف على حفظ الأرشيف.
newEntrySettings
SevenZipEntrySettings
إعدادات الضغط والتشفير المستخدمة لإضافة Aspose.Zip.SevenZip.SevenZipArchiveEntry العنصر.
Returns
إدخال ZIP.
Examples
using (FileStream sevenZipFile = File.Open("archive.7z", FileMode.Create))
{
using (var archive = new SevenZipArchive(new SevenZipEntrySettings(new SevenZipLZMA2CompressionSettings())))
{
archive.CreateEntry("data.bin", "file.dat");
archive.Save(sevenZipFile);
}
}
Remarks
يتم تعيين اسم الإدخال فقط داخل المعلم.لا يؤثر اسم الملف المقدمة في المعلم على اسم الإدخال.
إذا تم فتح الملف على الفور مع المعيار فإنه يتم حظرها حتى يتم حفظ الأرشيف.
Exceptions
path’ is null.
لا يحصل المتصل على إذن الوصول المطلوب.
الطريق " فارغ ، يحتوي على مساحات بيضاء فقط ، أو يحتوي على أحرف غير صحيحة.
يتم رفض الوصول إلى ملف path".
على سبيل المثال ، على المنصات المستندة إلى Windows ، يجب أن تكون المسارات أقل من 248 حرفًا ، ويجب أن يكون اسم الملف أقل من 260 حرفًا.
ملف في path’ يحتوي على عمود (:) في وسط السلسلة.
Dispose()
يمارس المهام المحددة في التطبيق المرتبطة بتفريغ أو إطلاق أو إعادة تدوير الموارد غير المعالجة.
public void Dispose()
Dispose(بول)
يمارس المهام المحددة في التطبيق المرتبطة بتفريغ أو إطلاق أو إعادة تدوير الموارد غير المعالجة.
protected virtual void Dispose(bool disposing)
Parameters
disposing
bool
هل ينبغي تخصيص الموارد التي يتم إدارةها؟
ExtractToDirectory(ستيفن، ستيفن)
استخراج جميع الملفات في الأرشيف إلى الدليل المقدمة.
public void ExtractToDirectory(string destinationDirectory, string password = null)
Parameters
destinationDirectory
string
الطريق إلى الدليل لوضع الملفات المستخرجة في.
password
string
كلمة المرور الاختيارية لتفريغ المحتوى.
Examples
using (var archive = new SevenZipArchive("archive.7z"))
{
archive.ExtractToDirectory("C:\extracted");
}
Remarks
إذا لم يكن الدليل موجودًا ، فسيتم إنشاؤه.
يتم استخدامها لتشفير المحتوى فقط.إذا تم تشفير أسماء الملفات إعطاء كلمة المرور في Aspose.Zip.SevenZapArchive.#ctor(System.String,Systems. String) أو __ WL51.ZIP.NightZype.
Exceptions
destinationDirectory’ is null.
على سبيل المثال، على منصات ويندوز، يجب أن تكون المسارات أقل من 248 حرف، وأسماء الملفات يجب أن تكون أقل من 260 حرف.
لا يتمتع المكالمة بالترخيص المطلوب للوصول إلى الدليل الحالي.
إذا لم يكن الدليل موجودًا ، فإن المسار يحتوي على حرف العمود الفقري (:) الذي ليس جزءًا من علامة محرك الأقراص (“C:”).
destinationDirectory’ is a zero-length string, contains only white space, or contains one or more invalid characters. You can query for invalid characters by using the System.IO.Path.GetInvalidPathChars method. -or- path is prefixed with, or contains, only a colon character (:).
المجلد المحدد بالطريق هو ملف. -أو- اسم الشبكة غير معروف.
وقد تم تدمير الأرشيف
Save(Stream)
توفير 7z الأرشيف إلى التدفق المقدمة.
public void Save(Stream output)
Parameters
output
Stream
النطاق المستهدف
Examples
using (FileStream sevenZipFile = File.Open("archive.7z", FileMode.Create))
{
using (FileStream source = File.Open("data.bin", FileMode.Open, FileAccess.Read))
{
using (var archive = new SevenZipArchive())
{
archive.CreateEntry("data", source);
archive.Save(sevenZipFile);
}
}
}
Remarks
يجب أن تكون قابلة للبحث.
Exceptions
output’ does not support seeking.
output’ is null.
لم يتمكن الكودر من ضغط البيانات.
Save(الستار)
حفظ الأرشيف إلى ملف الوجهة المقدمة.
public void Save(string destinationFileName)
Parameters
destinationFileName
string
إذا كان اسم الملف المحدد يشير إلى ملف موجود ، فسيتم إعادة كتابته.
Examples
using (FileStream source = File.Open("data.bin", FileMode.Open, FileAccess.Read))
{
using (var archive = new SevenZipArchive(new SevenZipEntrySettings(new SevenZipLZMACompressionSettings())))
{
archive.CreateEntry("data", source);
archive.Save("archive.7z");
}
}
Remarks
من الممكن حفظ الأرشيف في نفس المسار الذي تم تحميله من. ومع ذلك، هذا لا ينصح لأن هذا النهج يستخدم نسخ إلى ملف مؤقت.
Exceptions
destinationFileName’ is null.
لا يحصل المتصل على إذن الوصول المطلوب.
الوجه destinationFileName’ فارغ ، يحتوي فقط على مساحات بيضاء ، أو يحتوي على أحرف غير صحيحة.
يتم رفض الوصول إلى ملف destinationFileName'.
المحدد destinationFileName، اسم الملف، أو كلاهما يتجاوز الحد الأقصى الذي يحدده النظام.على سبيل المثال، على منصات ويندوز، يجب أن تكون المسارات أقل من 248 حرفا، وأسماء الملفات يجب أن تكون أقل من 260 حرفا.
ملف في destinationFileName’ يحتوي على عمود (:) في منتصف السلسلة.
SaveSplit(صفحة, SplitSevenZipArchiveSaveOptions)
تخزين الأرشيف متعدد الحجم إلى دليل الوجهة المقدمة.
public void SaveSplit(string destinationDirectory, SplitSevenZipArchiveSaveOptions options)
Parameters
destinationDirectory
string
المسار إلى الدليل حيث سيتم إنشاء أجزاء الأرشيف.
options
SplitSevenZipArchiveSaveOptions
خيارات حفظ الأرشيف، بما في ذلك اسم الملف.
Examples
using (SevenZipArchive archive = new SevenZipArchive())
{
archive.CreateEntry("entry.bin", "data.bin");
archive.SaveSplit(@"C:\Folder", new SplitSevenZipArchiveSaveOptions("volume", 65536));
}
Remarks
هذه الطريقة تتكون من عدة () ملفات filename.7z.001, filename.7z.002, …, filename.7z.(n).
لا يمكن أن تجعل الأرشيف الحالي متعدد الحجم.
Exceptions
تم فتح هذا الأرشيف من المصدر الحالي.
destinationDirectory’ is null.
لا يتمتع المكالمة بالترخيص المطلوب للوصول إلى الدليل.
destinationDirectory’ contains invalid characters such as “, >, <, or |.
المسار المحدد يتجاوز الحد الأقصى المحدد من النظام.