Class XarArchive

Class XarArchive

Namespace: Aspose.Zip.Xar
Assembly: Aspose.Zip.dll (25.1.0)

Kelas ini mewakili file arsip xar.

public class XarArchive : IArchive, IDisposable

Pewarisan

objectXarArchive

Mengimplementasikan

IArchive, IDisposable

Anggota yang Dwarisi

object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()

Konstruktor

XarArchive(XarCompressionSettings)

Menginisialisasi instance baru dari kelas Aspose.Zip.Xar.XarArchive.

public XarArchive(XarCompressionSettings defaultCompressionSettings = null)

Parameter

defaultCompressionSettings XarCompressionSettings

Pengaturan kompresi default, diterapkan ke semua entri arsip.

Contoh

Contoh berikut menunjukkan cara mengompres file.

using (var archive = new XarArchive())
{
    archive.CreateEntry("first.bin", "data.bin");
    archive.Save("archive.xar");
}

XarArchive(Stream, XarLoadOptions)

Menginisialisasi instance baru dari kelas Aspose.Zip.Xar.XarArchive dan menyusun daftar entri yang dapat diekstrak dari arsip.

public XarArchive(Stream sourceStream, XarLoadOptions loadOptions = null)

Parameter

sourceStream Stream

Sumber arsip. Harus dapat dicari.

loadOptions XarLoadOptions

Opsi untuk memuat arsip.

Contoh

Contoh berikut menunjukkan cara mengekstrak semua entri ke direktori.

using (var archive = new XarArchive(File.OpenRead("archive.xar")))
{
   archive.ExtractToDirectory("C:\\extracted");
}

Catatan

Konstruktor ini tidak membongkar entri apa pun. Lihat metode Aspose.Zip.Xar.XarFileEntry.Open untuk membongkar.

Eksepsi

ArgumentNullException

sourceStream adalah null.

ArgumentException

sourceStream tidak dapat dicari.

InvalidDataException

sourceStream bukan arsip xar yang valid.

XarArchive(string, XarLoadOptions)

Menginisialisasi instance baru dari kelas Aspose.Zip.Xar.XarArchive dan menyusun daftar entri yang dapat diekstrak dari arsip.

public XarArchive(string path, XarLoadOptions loadOptions = null)

Parameter

path string

Jalur ke file arsip.

loadOptions XarLoadOptions

Opsi untuk memuat arsip.

Contoh

Contoh berikut menunjukkan cara mengekstrak semua entri ke direktori.

using (var archive = new XarArchive("archive.xar")) 
{
   archive.ExtractToDirectory("C:\\extracted");
}

Catatan

Konstruktor ini tidak membongkar entri apa pun. Lihat metode Aspose.Zip.Xar.XarFileEntry.Open untuk membongkar.

Eksepsi

ArgumentNullException

path adalah null.

SecurityException

Pemanggil tidak memiliki izin yang diperlukan untuk mengakses.

ArgumentException

path kosong, hanya berisi spasi putih, atau mengandung karakter yang tidak valid.

UnauthorizedAccessException

Akses ke file path ditolak.

PathTooLongException

path, nama file, atau keduanya melebihi panjang maksimum yang ditentukan oleh sistem. Misalnya, pada platform berbasis Windows, jalur harus kurang dari 248 karakter, dan nama file harus kurang dari 260 karakter.

NotSupportedException

File di path mengandung tanda titik dua (:) di tengah string.

FileNotFoundException

File tidak ditemukan.

DirectoryNotFoundException

Jalur yang ditentukan tidak valid, seperti berada di drive yang tidak dipetakan.

IOException

File sudah terbuka.

InvalidDataException

File di path bukan arsip xar yang valid.

Properti

Entries

Mendapatkan entri dari tipe Aspose.Zip.Xar.XarEntry yang membentuk arsip.

public IEnumerable<xarentry> Entries { get; }

Nilai Properti

IEnumerable<XarEntry&gt;

Metode

CreateEntries(string, bool, XarCompressionSettings)

Menambahkan ke arsip semua file dan direktori secara rekursif di direktori yang diberikan.

public XarArchive CreateEntries(string sourceDirectory, bool includeRootDirectory = true, XarCompressionSettings compressionSettings = null)

Parameter

sourceDirectory string

Direktori untuk dikompres.

includeRootDirectory bool

Menunjukkan apakah akan menyertakan direktori akar itu sendiri atau tidak.

compressionSettings XarCompressionSettings

Pengaturan kompresi yang digunakan untuk menambahkan item Aspose.Zip.Xar.XarEntry.

Mengembalikan

XarArchive

Instansi entri Xar.

Contoh

using (FileStream xarFile = File.Open("archive.xar", FileMode.Create))
{
    using (var archive = new XarArchive())
    {
        archive.CreateEntries(@"C:\folder", false);
        archive.Save(xarFile);
    }
}

Eksepsi

ArgumentNullException

sourceDirectory adalah null.

SecurityException

Pemanggil tidak memiliki izin yang diperlukan untuk mengakses sourceDirectory.

ArgumentException

sourceDirectory mengandung karakter yang tidak valid seperti “, <, >, atau |.

PathTooLongException

Jalur yang ditentukan, nama file, atau keduanya melebihi panjang maksimum yang ditentukan oleh sistem. Misalnya, pada platform berbasis Windows, jalur harus kurang dari 248 karakter, dan nama file harus kurang dari 260 karakter. Jalur yang ditentukan, nama file, atau keduanya terlalu panjang.

IOException

sourceDirectory mewakili file, bukan direktori.

CreateEntries(DirectoryInfo, bool, XarCompressionSettings)

Menambahkan ke arsip semua file dan direktori secara rekursif di direktori yang diberikan.

public XarArchive CreateEntries(DirectoryInfo directory, bool includeRootDirectory = true, XarCompressionSettings compressionSettings = null)

Parameter

directory DirectoryInfo

Direktori untuk dikompres.

includeRootDirectory bool

Menunjukkan apakah akan menyertakan direktori akar itu sendiri atau tidak.

compressionSettings XarCompressionSettings

Pengaturan kompresi yang digunakan untuk menambahkan item Aspose.Zip.Xar.XarEntry.

Mengembalikan

XarArchive

Instansi entri Xar.

Contoh

using (FileStream xarFile = File.Open("archive.xar", FileMode.Create))
{
    using (var archive = new XarArchive())
    {
        archive.CreateEntries(new DirectoryInfo(@"C:\folder"), false);
        archive.Save(xarFile);
    }
}

Eksepsi

ArgumentNullException

directory adalah null.

SecurityException

Pemanggil tidak memiliki izin yang diperlukan untuk mengakses directory.

IOException

directory mewakili file, bukan direktori.

CreateEntry(string, FileInfo, bool, XarCompressionSettings)

Buat entri tunggal dalam arsip.

public XarEntry CreateEntry(string name, FileInfo fileInfo, bool openImmediately = false, XarCompressionSettings compressionSettings = null)

Parameter

name string

Nama entri.

fileInfo FileInfo

Metadata file atau folder yang akan dikompres.

openImmediately bool

True jika membuka file segera, jika tidak buka file saat arsip disimpan.

compressionSettings XarCompressionSettings

Pengaturan kompresi yang digunakan untuk menambahkan item Aspose.Zip.Xar.XarEntry.

Mengembalikan

XarEntry

Instansi entri Xar.

Contoh

FileInfo fileInfo = new FileInfo("data.bin");
using (var archive = new XarArchive())
{
    archive.CreateEntry("test.bin", fileInfo);
    archive.Save("archive.xar");
}

Catatan

Jika file dibuka segera dengan parameter openImmediately maka akan terblokir hingga arsip dibuang.

Eksepsi

ArgumentNullException

name adalah null.

ArgumentException

name kosong.

ArgumentNullException

fileInfo adalah null.

CreateEntry(string, string, bool, XarCompressionSettings)

Buat entri tunggal dalam arsip.

public XarEntry CreateEntry(string name, string sourcePath, bool openImmediately = false, XarCompressionSettings compressionSettings = null)

Parameter

name string

Nama entri.

sourcePath string

Jalur ke file yang akan dikompres.

openImmediately bool

True jika membuka file segera, jika tidak buka file saat arsip disimpan.

compressionSettings XarCompressionSettings

Pengaturan kompresi yang digunakan untuk menambahkan item Aspose.Zip.Xar.XarEntry.

Mengembalikan

XarEntry

Instansi entri Xar.

Contoh

using (var archive = new XarArchive())
{
    archive.CreateEntry("first.bin", "data.bin");
    archive.Save("archive.xar");
}

Catatan

Nama entri hanya ditetapkan dalam parameter name. Nama file yang diberikan dalam parameter sourcePath tidak memengaruhi nama entri.

Jika file dibuka segera dengan parameter openImmediately maka akan terblokir hingga arsip dibuang.

Eksepsi

ArgumentNullException

sourcePath adalah null.

SecurityException

Pemanggil tidak memiliki izin yang diperlukan untuk mengakses.

ArgumentException

sourcePath kosong, hanya berisi spasi putih, atau mengandung karakter yang tidak valid. - atau - Nama file, sebagai bagian dari name, melebihi 100 simbol.

UnauthorizedAccessException

Akses ke file sourcePath ditolak.

PathTooLongException

sourcePath, nama file, atau keduanya melebihi panjang maksimum yang ditentukan oleh sistem. Misalnya, pada platform berbasis Windows, jalur harus kurang dari 248 karakter, dan nama file harus kurang dari 260 karakter. - atau - name terlalu panjang untuk xar.

NotSupportedException

File di sourcePath mengandung tanda titik dua (:) di tengah string.

InvalidOperationException

Tidak mungkin untuk memodifikasi arsip xar.

CreateEntry(string, Stream, XarCompressionSettings)

Buat entri tunggal dalam arsip.

public XarEntry CreateEntry(string name, Stream source, XarCompressionSettings compressionSettings = null)

Parameter

name string

Nama entri.

source Stream

Aliran masukan untuk entri.

compressionSettings XarCompressionSettings

Pengaturan kompresi yang digunakan untuk menambahkan item Aspose.Zip.Xar.XarEntry.

Mengembalikan

XarEntry

Instansi entri Xar.

Contoh

using (var archive = new XarArchive())
{
    archive.CreateEntry("data.bin", File.OpenRead("data.bin"));
    archive.Save("archive.xar");
}

Eksepsi

ArgumentNullException

name adalah null.

ArgumentNullException

source adalah null.

ArgumentException

name kosong.

InvalidOperationException

Tidak mungkin untuk memodifikasi arsip xar.

DeleteEntry(XarEntry)

Menghapus kemunculan pertama dari entri tertentu dari daftar entri.

public XarArchive DeleteEntry(XarEntry entry)

Parameter

entry XarEntry

Entri yang akan dihapus dari daftar entri.

Mengembalikan

XarArchive

Instansi entri Xar.

Contoh

Berikut adalah cara Anda dapat menghapus semua entri kecuali yang terakhir:

using (var archive = new XarArchive("archive.xar"))
{
    while (archive.Entries.Count &gt; 1)
        archive.DeleteEntry(archive.Entries.FirstOrDefault());
    archive.Save(outputXarFile);
}

Eksepsi

ArgumentNullException

entry adalah null.

Dispose()

Melakukan tugas yang ditentukan oleh aplikasi terkait dengan membebaskan, melepaskan, atau mengatur ulang sumber daya yang tidak dikelola.

public void Dispose()

Dispose(bool)

Melakukan tugas yang ditentukan oleh aplikasi terkait dengan membebaskan, melepaskan, atau mengatur ulang sumber daya yang tidak dikelola.

protected virtual void Dispose(bool disposing)

Parameter

disposing bool

Apakah sumber daya yang dikelola harus dibebaskan.

ExtractToDirectory(string)

Mengekstrak semua file dalam arsip ke direktori yang disediakan.

public void ExtractToDirectory(string destinationDirectory)

Parameter

destinationDirectory string

Jalur ke direktori untuk menempatkan file yang diekstrak.

Contoh

using (var archive = new XarArchive("archive.xar")) 
{
   archive.ExtractToDirectory("C:\\extracted");
}

Catatan

Jika direktori tidak ada, itu akan dibuat.

Eksepsi

ArgumentNullException

path adalah null

PathTooLongException

Jalur yang ditentukan, nama file, atau keduanya melebihi panjang maksimum yang ditentukan oleh sistem. Misalnya, pada platform berbasis Windows, jalur harus kurang dari 248 karakter dan nama file harus kurang dari 260 karakter.

SecurityException

Pemanggil tidak memiliki izin yang diperlukan untuk mengakses direktori yang ada.

NotSupportedException

Jika direktori tidak ada, jalur mengandung karakter titik dua (:) yang bukan bagian dari label drive (“C:").

ArgumentException

path adalah string dengan panjang nol, hanya berisi spasi putih, atau mengandung satu atau lebih karakter yang tidak valid. Anda dapat menanyakan karakter yang tidak valid dengan menggunakan metode System.IO.Path.GetInvalidPathChars. -atau- path diawali dengan, atau hanya mengandung, karakter titik dua (:).

IOException

Direktori yang ditentukan oleh path adalah file. -atau- Nama jaringan tidak diketahui.

InvalidDataException

Arsip rusak.

Save(string, XarSaveOptions)

Menyimpan arsip ke file tujuan yang diberikan.

public void Save(string destinationFileName, XarSaveOptions saveOptions = null)

Parameter

destinationFileName string

Jalur arsip yang akan dibuat. Jika nama file yang ditentukan menunjuk ke file yang ada, itu akan ditimpa.

saveOptions XarSaveOptions

Opsi untuk menyimpan arsip xar.

Eksepsi

ArgumentNullException

destinationFileName adalah null.

InvalidOperationException

Tidak mungkin untuk memodifikasi arsip xar.

Save(Stream, XarSaveOptions)

Menyimpan arsip ke aliran yang diberikan.

public void Save(Stream output, XarSaveOptions saveOptions = null)

Parameter

output Stream

Aliran tujuan.

saveOptions XarSaveOptions

Opsi untuk menyimpan arsip xar.

Eksepsi

ArgumentNullException

output adalah null.

ArgumentException

output tidak dapat ditulis/dibaca atau tidak dapat dicari.

InvalidOperationException

Tidak mungkin untuk memodifikasi arsip xar.

 Indonesia