Class RarArchive
Namespace: Aspose.Zip.Rar
Assembly: Aspose.Zip.dll (25.1.0)
تمثل هذه الفئة ملف أرشيف RAR. استخدمها لاستخراج أرشيفات RAR.
public class RarArchive : IArchive, IDisposable
الوراثة
تطبيقات
الأعضاء الموروثون
object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()
المُنشئات
RarArchive(string, RarArchiveLoadOptions)
يهيئ مثيلًا جديدًا من فئة Aspose.Zip.Rar.RarArchive ويقوم بتكوين قائمة الإدخالات التي يمكن استخراجها من الأرشيف.
public RarArchive(string path, RarArchiveLoadOptions loadOptions = null)
المعلمات
path
string
المسار المؤهل بالكامل أو المسار النسبي إلى ملف الأرشيف.
loadOptions
RarArchiveLoadOptions
خيارات لتحميل الأرشيف الموجود.
أمثلة
المثال التالي يقوم باستخراج أرشيف، ثم يفك ضغط الإدخال الأول إلى MemoryStream
.
var extracted = new MemoryStream();
using (RarArchive archive = new RarArchive("data.rar"))
{
using (var decompressed = archive.Entries[0].Open())
{
byte[] b = new byte[8192];
int bytesRead;
while (0 < (bytesRead = decompressed.Read(b, 0, b.Length)))
extracted.Write(b, 0, bytesRead);
}
}
الملاحظات
لا يقوم هذا المُنشئ بفك ضغط أي إدخال. راجع طريقة Aspose.Zip.Rar.RarArchiveEntry.Open(System.String) لفك الضغط.
الاستثناءات
path
هو null.
المستدعي ليس لديه الإذن المطلوب للوصول.
path
فارغ، يحتوي فقط على مسافات بيضاء، أو يحتوي على أحرف غير صالحة.
تم رفض الوصول إلى الملف path
.
تجاوز path
المحدد، اسم الملف، أو كلاهما الطول الأقصى المحدد من قبل النظام. على سبيل المثال، على المنصات المعتمدة على Windows، يجب أن تكون المسارات أقل من 248 حرفًا، ويجب أن تكون أسماء الملفات أقل من 260 حرفًا.
الملف في path
يحتوي على نقطتين (:) في منتصف السلسلة.
لم يتم العثور على الملف.
المسار المحدد غير صالح، مثل كونه على محرك غير مخصص.
الملف مفتوح بالفعل.
RarArchive(Stream, RarArchiveLoadOptions)
يهيئ مثيلًا جديدًا من فئة Aspose.Zip.Rar.RarArchive ويقوم بتكوين قائمة الإدخالات التي يمكن استخراجها من الأرشيف.
public RarArchive(Stream sourceStream, RarArchiveLoadOptions loadOptions = null)
المعلمات
sourceStream
Stream
مصدر الأرشيف.
loadOptions
RarArchiveLoadOptions
خيارات لتحميل الأرشيف الموجود.
أمثلة
المثال التالي يقوم بفك تشفير وفك ضغط الإدخال الأول إلى MemoryStream
.
var fs = File.OpenRead("encrypted.rar");
var extracted = new MemoryStream();
using (RarArchive archive = new RarArchive(fs, new RarArchiveLoadOptions() { DecryptionPassword = "p@s$" }))
{
using (var decompressed = archive.Entries[0].Open())
{
byte[] b = new byte[8192];
int bytesRead;
while (0 < (bytesRead = decompressed.Read(b, 0, b.Length)))
extracted.Write(b, 0, bytesRead);
}
}
الملاحظات
لا يقوم هذا المُنشئ بفك ضغط أي إدخال. راجع طريقة Aspose.Zip.Rar.RarArchiveEntry.Open(System.String) لفك الضغط.
الاستثناءات
sourceStream
غير قابل للبحث.
توقيع خاطئ للأرشيف. - أو - الملف ليس أرشيف RAR.
الخصائص
Entries
يحصل على إدخالات من نوع Aspose.Zip.Rar.RarArchiveEntry التي تشكل أرشيف rar.
public ReadOnlyCollection<rararchiveentry> Entries { get; }
قيمة الخاصية
ReadOnlyCollection<RarArchiveEntry>
الطرق
Dispose(bool)
ينفذ مهام محددة بواسطة التطبيق مرتبطة بتحرير، أو إعادة تعيين الموارد غير المدارة.
protected virtual void Dispose(bool disposing)
المعلمات
disposing
bool
ما إذا كانت الموارد المدارة يجب أن يتم التخلص منها.
Dispose()
ينفذ مهام محددة بواسطة التطبيق مرتبطة بتحرير، أو إعادة تعيين الموارد غير المدارة.
public void Dispose()
ExtractToDirectory(string, string)
يستخرج جميع الملفات في الأرشيف إلى الدليل المقدم.
[Obsolete("For extraction encrypted RAR archive please provide password in constructor with Aspose.Zip.Rar.RarArchiveLoadOptions.DecryptionPassword")]
public void ExtractToDirectory(string destinationDirectory, string password = null)
المعلمات
destinationDirectory
string
المسار إلى الدليل لوضع الملفات المستخرجة فيه.
password
string
كلمة المرور الاختيارية لفك التشفير.
أمثلة
using (var archive = new RarArchive("archive.rar"))
{
archive.ExtractToDirectory("C:\extracted", "$ecRet");
}
الملاحظات
إذا لم يكن الدليل موجودًا، فسيتم إنشاؤه.
الاستثناءات
destinationDirectory
هو null.
تجاوز path
المحدد، اسم الملف، أو كلاهما الطول الأقصى المحدد من قبل النظام. على سبيل المثال، على المنصات المعتمدة على Windows، يجب أن تكون المسارات أقل من 248 حرفًا وأسماء الملفات أقل من 260 حرفًا.
المستدعي ليس لديه الإذن المطلوب للوصول إلى الدليل الموجود.
إذا لم يكن الدليل موجودًا، يحتوي المسار على حرف نقطة (:) ليس جزءًا من تسمية محرك (“C:").
destinationDirectory
هو سلسلة ذات طول صفر، تحتوي فقط على مسافات بيضاء، أو تحتوي على حرف أو أكثر غير صالح. يمكنك الاستعلام عن الأحرف غير الصالحة باستخدام طريقة System.IO.Path.GetInvalidPathChars. - أو - المسار مُسبقًا، أو يحتوي فقط على حرف نقطة (:).
الدليل المحدد بواسطة المسار هو ملف. - أو - الاسم الشبكي غير معروف.
ExtractToDirectory(string)
يستخرج جميع الملفات في الأرشيف إلى الدليل المقدم.
public void ExtractToDirectory(string destinationDirectory)
المعلمات
destinationDirectory
string
المسار إلى الدليل لوضع الملفات المستخرجة فيه.
أمثلة
using (var archive = new RarArchive("archive.rar"))
{
archive.ExtractToDirectory("C:\extracted");
}
الملاحظات
إذا لم يكن الدليل موجودًا، فسيتم إنشاؤه.
الاستثناءات
destinationDirectory
هو null.
تجاوز path
المحدد، اسم الملف، أو كلاهما الطول الأقصى المحدد من قبل النظام. على سبيل المثال، على المنصات المعتمدة على Windows، يجب أن تكون المسارات أقل من 248 حرفًا وأسماء الملفات أقل من 260 حرفًا.
المستدعي ليس لديه الإذن المطلوب للوصول إلى الدليل الموجود.
إذا لم يكن الدليل موجودًا، يحتوي المسار على حرف نقطة (:) ليس جزءًا من تسمية محرك (“C:").
destinationDirectory
هو سلسلة ذات طول صفر، تحتوي فقط على مسافات بيضاء، أو تحتوي على حرف أو أكثر غير صالح. يمكنك الاستعلام عن الأحرف غير الصالحة باستخدام طريقة System.IO.Path.GetInvalidPathChars. - أو - المسار مُسبقًا، أو يحتوي فقط على حرف نقطة (:).
الدليل المحدد بواسطة المسار هو ملف. - أو - الاسم الشبكي غير معروف.