Class RarArchive
Namespace: Aspose.Zip.Rar
Assembly: Aspose.Zip.dll (25.1.0)
Kelas ini mewakili file arsip RAR. Gunakan untuk mengekstrak arsip RAR.
public class RarArchive : IArchive, IDisposable
Pewarisan
Mengimplementasikan
Anggota yang Dwarisi
object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()
Konstruktor
RarArchive(string, RarArchiveLoadOptions)
Menginisialisasi instance baru dari kelas Aspose.Zip.Rar.RarArchive dan menyusun daftar entri yang dapat diekstrak dari arsip.
public RarArchive(string path, RarArchiveLoadOptions loadOptions = null)
Parameter
path
string
Jalur lengkap atau jalur relatif ke file arsip.
loadOptions
RarArchiveLoadOptions
Opsi untuk memuat arsip yang ada.
Contoh
Contoh berikut mengekstrak arsip, kemudian mendekompresi entri pertama ke dalam 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);
}
}
Keterangan
Konstruktor ini tidak mendekompresi entri apa pun. Lihat metode Aspose.Zip.Rar.RarArchiveEntry.Open(System.String) untuk mendekompresi.
Pengecualian
path
adalah null.
Penelepon tidak memiliki izin yang diperlukan untuk mengakses.
path
kosong, hanya berisi spasi putih, atau berisi karakter yang tidak valid.
Akses ke file path
ditolak.
path
, nama file, atau keduanya melebihi panjang maksimum yang ditentukan oleh sistem. Misalnya, di platform berbasis Windows, jalur harus kurang dari 248 karakter, dan nama file harus kurang dari 260 karakter.
File di path
mengandung tanda titik dua (:) di tengah string.
File tidak ditemukan.
Jalur yang ditentukan tidak valid, seperti berada di drive yang tidak dipetakan.
File sudah terbuka.
RarArchive(Stream, RarArchiveLoadOptions)
Menginisialisasi instance baru dari kelas Aspose.Zip.Rar.RarArchive dan menyusun daftar entri yang dapat diekstrak dari arsip.
public RarArchive(Stream sourceStream, RarArchiveLoadOptions loadOptions = null)
Parameter
sourceStream
Stream
Sumber arsip.
loadOptions
RarArchiveLoadOptions
Opsi untuk memuat arsip yang ada.
Contoh
Contoh berikut mendekripsi dan mendekompresi entri pertama ke dalam 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);
}
}
Keterangan
Konstruktor ini tidak mendekompresi entri apa pun. Lihat metode Aspose.Zip.Rar.RarArchiveEntry.Open(System.String) untuk mendekompresi.
Pengecualian
sourceStream
tidak dapat dicari.
Tanda tangan yang salah untuk arsip. - atau - File bukan arsip RAR.
Properti
Entries
Mengambil entri dari tipe Aspose.Zip.Rar.RarArchiveEntry yang membentuk arsip rar.
public ReadOnlyCollection<rararchiveentry> Entries { get; }
Nilai Properti
ReadOnlyCollection<RarArchiveEntry>
Metode
Dispose(bool)
Melakukan tugas yang ditentukan aplikasi terkait dengan membebaskan, melepaskan, atau mereset sumber daya tidak terkelola.
protected virtual void Dispose(bool disposing)
Parameter
disposing
bool
Apakah sumber daya yang dikelola harus dibebaskan.
Dispose()
Melakukan tugas yang ditentukan aplikasi terkait dengan membebaskan, melepaskan, atau mereset sumber daya tidak terkelola.
public void Dispose()
ExtractToDirectory(string, string)
Mengekstrak semua file dalam arsip ke direktori yang diberikan.
[Obsolete("Untuk ekstraksi arsip RAR yang terenkripsi, harap berikan kata sandi di konstruktor dengan Aspose.Zip.Rar.RarArchiveLoadOptions.DecryptionPassword")]
public void ExtractToDirectory(string destinationDirectory, string password = null)
Parameter
destinationDirectory
string
Jalur ke direktori untuk menempatkan file yang diekstrak.
password
string
Kata sandi opsional untuk dekripsi.
Contoh
using (var archive = new RarArchive("archive.rar"))
{
archive.ExtractToDirectory("C:\extracted", "$ecRet");
}
Keterangan
Jika direktori tidak ada, direktori tersebut akan dibuat.
Pengecualian
destinationDirectory
adalah null.
Jalur yang ditentukan, nama file, atau keduanya melebihi panjang maksimum yang ditentukan oleh sistem. Misalnya, di platform berbasis Windows, jalur harus kurang dari 248 karakter dan nama file harus kurang dari 260 karakter.
Penelepon tidak memiliki izin yang diperlukan untuk mengakses direktori yang ada.
Jika direktori tidak ada, jalur mengandung karakter titik dua (:) yang bukan bagian dari label drive (“C:").
destinationDirectory
adalah string dengan panjang nol, hanya berisi spasi putih, atau berisi satu atau lebih karakter yang tidak valid. Anda dapat menanyakan karakter yang tidak valid dengan menggunakan metode System.IO.Path.GetInvalidPathChars. -atau- jalur diawali dengan, atau hanya berisi, karakter titik dua (:).
Direktori yang ditentukan oleh jalur adalah file. -atau- Nama jaringan tidak diketahui.
ExtractToDirectory(string)
Mengekstrak semua file dalam arsip ke direktori yang diberikan.
public void ExtractToDirectory(string destinationDirectory)
Parameter
destinationDirectory
string
Jalur ke direktori untuk menempatkan file yang diekstrak.
Contoh
using (var archive = new RarArchive("archive.rar"))
{
archive.ExtractToDirectory("C:\extracted");
}
Keterangan
Jika direktori tidak ada, direktori tersebut akan dibuat.
Pengecualian
destinationDirectory
adalah null.
Jalur yang ditentukan, nama file, atau keduanya melebihi panjang maksimum yang ditentukan oleh sistem. Misalnya, di platform berbasis Windows, jalur harus kurang dari 248 karakter dan nama file harus kurang dari 260 karakter.
Penelepon tidak memiliki izin yang diperlukan untuk mengakses direktori yang ada.
Jika direktori tidak ada, jalur mengandung karakter titik dua (:) yang bukan bagian dari label drive (“C:").
destinationDirectory
adalah string dengan panjang nol, hanya berisi spasi putih, atau berisi satu atau lebih karakter yang tidak valid. Anda dapat menanyakan karakter yang tidak valid dengan menggunakan metode System.IO.Path.GetInvalidPathChars. -atau- jalur diawali dengan, atau hanya berisi, karakter titik dua (:).
Direktori yang ditentukan oleh jalur adalah file. -atau- Nama jaringan tidak diketahui.