Class XarArchive

Class XarArchive

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

คลาสนี้แทนที่ไฟล์ xar archive.

public class XarArchive : IArchive, IDisposable

การสืบทอด

objectXarArchive

การนำไปใช้

IArchive, IDisposable

สมาชิกที่สืบทอด

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

ตัวสร้าง

XarArchive(XarCompressionSettings)

สร้างอินสแตนซ์ใหม่ของคลาส Aspose.Zip.Xar.XarArchive.

public XarArchive(XarCompressionSettings defaultCompressionSettings = null)

พารามิเตอร์

defaultCompressionSettings XarCompressionSettings

การตั้งค่าการบีบอัดเริ่มต้นที่ใช้กับรายการทั้งหมดใน archive.

ตัวอย่าง

ตัวอย่างต่อไปนี้แสดงวิธีการบีบอัดไฟล์.

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

XarArchive(Stream, XarLoadOptions)

สร้างอินสแตนซ์ใหม่ของคลาส Aspose.Zip.Xar.XarArchive และจัดทำรายการที่สามารถดึงออกจาก archive.

public XarArchive(Stream sourceStream, XarLoadOptions loadOptions = null)

พารามิเตอร์

sourceStream Stream

แหล่งที่มาของ archive. ต้องสามารถค้นหาได้.

loadOptions XarLoadOptions

ตัวเลือกในการโหลด archive.

ตัวอย่าง

ตัวอย่างต่อไปนี้แสดงวิธีการดึงรายการทั้งหมดไปยังไดเรกทอรี.

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

หมายเหตุ

ตัวสร้างนี้ไม่ทำการแตกไฟล์ใด ๆ ดูวิธี Aspose.Zip.Xar.XarFileEntry.Open สำหรับการแตกไฟล์.

ข้อยกเว้น

ArgumentNullException

sourceStream เป็น null.

ArgumentException

sourceStream ไม่สามารถค้นหาได้.

InvalidDataException

sourceStream ไม่ใช่ xar archive ที่ถูกต้อง.

XarArchive(string, XarLoadOptions)

สร้างอินสแตนซ์ใหม่ของคลาส Aspose.Zip.Xar.XarArchive และจัดทำรายการที่สามารถดึงออกจาก archive.

public XarArchive(string path, XarLoadOptions loadOptions = null)

พารามิเตอร์

path string

เส้นทางไปยังไฟล์ archive.

loadOptions XarLoadOptions

ตัวเลือกในการโหลด archive.

ตัวอย่าง

ตัวอย่างต่อไปนี้แสดงวิธีการดึงรายการทั้งหมดไปยังไดเรกทอรี.

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

หมายเหตุ

ตัวสร้างนี้ไม่ทำการแตกไฟล์ใด ๆ ดูวิธี Aspose.Zip.Xar.XarFileEntry.Open สำหรับการแตกไฟล์.

ข้อยกเว้น

ArgumentNullException

path เป็น null.

SecurityException

ผู้เรียกไม่มีสิทธิ์เข้าถึงที่จำเป็น.

ArgumentException

path ว่างเปล่า มีเพียงช่องว่าง หรือมีอักขระที่ไม่ถูกต้อง.

UnauthorizedAccessException

การเข้าถึงไฟล์ path ถูกปฏิเสธ.

PathTooLongException

path, ชื่อไฟล์ หรือทั้งสองอย่างเกินความยาวสูงสุดที่กำหนดโดยระบบ. ตัวอย่างเช่น บนแพลตฟอร์มที่ใช้ Windows เส้นทางต้องมีความยาวน้อยกว่า 248 ตัวอักษร และชื่อไฟล์ต้องมีความยาวน้อยกว่า 260 ตัวอักษร.

NotSupportedException

ไฟล์ที่ path มีเครื่องหมายทวิภาค (:) อยู่กลางสตริง.

FileNotFoundException

ไม่พบไฟล์.

DirectoryNotFoundException

เส้นทางที่ระบุไม่ถูกต้อง เช่น อยู่ในไดรฟ์ที่ไม่ได้แมพ.

IOException

ไฟล์ถูกเปิดอยู่แล้ว.

InvalidDataException

ไฟล์ที่ path ไม่ใช่ xar archive ที่ถูกต้อง.

คุณสมบัติ

Entries

รับรายการของประเภท Aspose.Zip.Xar.XarEntry ที่ประกอบเป็น archive.

public IEnumerable<xarentry> Entries { get; }

ค่าของคุณสมบัติ

IEnumerable<XarEntry&gt;

วิธีการ

CreateEntries(string, bool, XarCompressionSettings)

เพิ่มไฟล์และไดเรกทอรีทั้งหมดลงใน archive โดยการค้นหาแบบเรียกซ้อนในไดเรกทอรีที่กำหนด.

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

พารามิเตอร์

sourceDirectory string

ไดเรกทอรีที่จะบีบอัด.

includeRootDirectory bool

ระบุว่าควรรวมไดเรกทอรีหลักเองหรือไม่.

compressionSettings XarCompressionSettings

การตั้งค่าการบีบอัดที่ใช้สำหรับรายการ Aspose.Zip.Xar.XarEntry ที่เพิ่มเข้ามา.

คืนค่า

XarArchive

อินสแตนซ์ Xar entry.

ตัวอย่าง

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

ข้อยกเว้น

ArgumentNullException

sourceDirectory เป็น null.

SecurityException

ผู้เรียกไม่มีสิทธิ์เข้าถึง sourceDirectory ที่จำเป็น.

ArgumentException

sourceDirectory มีอักขระที่ไม่ถูกต้อง เช่น “, <, >, หรือ |.

PathTooLongException

เส้นทางที่ระบุ ชื่อไฟล์ หรือทั้งสองอย่างเกินความยาวสูงสุดที่กำหนดโดยระบบ. ตัวอย่างเช่น บนแพลตฟอร์มที่ใช้ Windows เส้นทางต้องมีความยาวน้อยกว่า 248 ตัวอักษร และชื่อไฟล์ต้องมีความยาวน้อยกว่า 260 ตัวอักษร. เส้นทาง ชื่อไฟล์ หรือทั้งสองอย่างยาวเกินไป.

IOException

sourceDirectory แทนไฟล์ ไม่ใช่ไดเรกทอรี.

CreateEntries(DirectoryInfo, bool, XarCompressionSettings)

เพิ่มไฟล์และไดเรกทอรีทั้งหมดลงใน archive โดยการค้นหาแบบเรียกซ้อนในไดเรกทอรีที่กำหนด.

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

พารามิเตอร์

directory DirectoryInfo

ไดเรกทอรีที่จะบีบอัด.

includeRootDirectory bool

ระบุว่าควรรวมไดเรกทอรีหลักเองหรือไม่.

compressionSettings XarCompressionSettings

การตั้งค่าการบีบอัดที่ใช้สำหรับรายการ Aspose.Zip.Xar.XarEntry ที่เพิ่มเข้ามา.

คืนค่า

XarArchive

อินสแตนซ์ Xar entry.

ตัวอย่าง

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

ข้อยกเว้น

ArgumentNullException

directory เป็น null.

SecurityException

ผู้เรียกไม่มีสิทธิ์เข้าถึง directory ที่จำเป็น.

IOException

directory แทนไฟล์ ไม่ใช่ไดเรกทอรี.

CreateEntry(string, FileInfo, bool, XarCompressionSettings)

สร้างรายการเดียวภายใน archive.

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

พารามิเตอร์

name string

ชื่อของรายการ.

fileInfo FileInfo

ข้อมูลเมตาของไฟล์หรือโฟลเดอร์ที่จะบีบอัด.

openImmediately bool

เป็นจริงถ้าจะเปิดไฟล์ทันที มิฉะนั้นเปิดไฟล์เมื่อบันทึก archive.

compressionSettings XarCompressionSettings

การตั้งค่าการบีบอัดที่ใช้สำหรับรายการ Aspose.Zip.Xar.XarEntry ที่เพิ่มเข้ามา.

คืนค่า

XarEntry

อินสแตนซ์ Xar entry.

ตัวอย่าง

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

หมายเหตุ

หากไฟล์ถูกเปิดทันทีด้วยพารามิเตอร์ openImmediately จะถูกบล็อกจนกว่าจะมีการจัดการ archive.

ข้อยกเว้น

ArgumentNullException

name เป็น null.

ArgumentException

name ว่างเปล่า.

ArgumentNullException

fileInfo เป็น null.

CreateEntry(string, string, bool, XarCompressionSettings)

สร้างรายการเดียวภายใน archive.

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

พารามิเตอร์

name string

ชื่อของรายการ.

sourcePath string

เส้นทางไปยังไฟล์ที่จะบีบอัด.

openImmediately bool

เป็นจริงถ้าจะเปิดไฟล์ทันที มิฉะนั้นเปิดไฟล์เมื่อบันทึก archive.

compressionSettings XarCompressionSettings

การตั้งค่าการบีบอัดที่ใช้สำหรับรายการ Aspose.Zip.Xar.XarEntry ที่เพิ่มเข้ามา.

คืนค่า

XarEntry

อินสแตนซ์ Xar entry.

ตัวอย่าง

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

หมายเหตุ

ชื่อรายการถูกตั้งค่าเฉพาะภายในพารามิเตอร์ name. ชื่อไฟล์ที่ระบุในพารามิเตอร์ sourcePath ไม่มีผลต่อชื่อรายการ.

หากไฟล์ถูกเปิดทันทีด้วยพารามิเตอร์ openImmediately จะถูกบล็อกจนกว่าจะมีการจัดการ archive.

ข้อยกเว้น

ArgumentNullException

sourcePath เป็น null.

SecurityException

ผู้เรียกไม่มีสิทธิ์เข้าถึง.

ArgumentException

sourcePath ว่างเปล่า มีเพียงช่องว่าง หรือมีอักขระที่ไม่ถูกต้อง. - หรือ - ชื่อไฟล์ใน name เกิน 100 สัญลักษณ์.

UnauthorizedAccessException

การเข้าถึงไฟล์ sourcePath ถูกปฏิเสธ.

PathTooLongException

เส้นทางที่ระบุ sourcePath, ชื่อไฟล์ หรือทั้งสองอย่างเกินความยาวสูงสุดที่กำหนดโดยระบบ. - หรือ - name ยาวเกินไปสำหรับ xar.

NotSupportedException

ไฟล์ที่ sourcePath มีเครื่องหมายทวิภาค (:) อยู่กลางสตริง.

InvalidOperationException

ไม่สามารถแก้ไข xar archive.

CreateEntry(string, Stream, XarCompressionSettings)

สร้างรายการเดียวภายใน archive.

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

พารามิเตอร์

name string

ชื่อของรายการ.

source Stream

สตรีมข้อมูลนำเข้าของรายการ.

compressionSettings XarCompressionSettings

การตั้งค่าการบีบอัดที่ใช้สำหรับรายการ Aspose.Zip.Xar.XarEntry ที่เพิ่มเข้ามา.

คืนค่า

XarEntry

อินสแตนซ์ Xar entry.

ตัวอย่าง

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

ข้อยกเว้น

ArgumentNullException

name เป็น null.

ArgumentNullException

source เป็น null.

ArgumentException

name ว่างเปล่า.

InvalidOperationException

ไม่สามารถแก้ไข xar archive.

DeleteEntry(XarEntry)

ลบการเกิดขึ้นครั้งแรกของรายการเฉพาะจากรายการรายการ.

public XarArchive DeleteEntry(XarEntry entry)

พารามิเตอร์

entry XarEntry

รายการที่จะลบออกจากรายการรายการ.

คืนค่า

XarArchive

อินสแตนซ์ Xar entry.

ตัวอย่าง

นี่คือวิธีที่คุณสามารถลบรายการทั้งหมดยกเว้นรายการสุดท้าย:

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

ข้อยกเว้น

ArgumentNullException

entry เป็น null.

Dispose()

ดำเนินการตามที่กำหนดโดยแอปพลิเคชันที่เกี่ยวข้องกับการปล่อย การปล่อย หรือการรีเซ็ตทรัพยากรที่ไม่จัดการ.

public void Dispose()

Dispose(bool)

ดำเนินการตามที่กำหนดโดยแอปพลิเคชันที่เกี่ยวข้องกับการปล่อย การปล่อย หรือการรีเซ็ตทรัพยากรที่ไม่จัดการ.

protected virtual void Dispose(bool disposing)

พารามิเตอร์

disposing bool

ระบุว่าทรัพยากรที่จัดการควรถูกปล่อย.

ExtractToDirectory(string)

ดึงไฟล์ทั้งหมดใน archive ไปยังไดเรกทอรีที่จัดเตรียมไว้.

public void ExtractToDirectory(string destinationDirectory)

พารามิเตอร์

destinationDirectory string

เส้นทางไปยังไดเรกทอรีที่จะวางไฟล์ที่ถูกดึงออก.

ตัวอย่าง

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

หมายเหตุ

หากไดเรกทอรีไม่อยู่ จะถูกสร้างขึ้น.

ข้อยกเว้น

ArgumentNullException

path เป็น null

PathTooLongException

เส้นทางที่ระบุ ชื่อไฟล์ หรือทั้งสองอย่างเกินความยาวสูงสุดที่กำหนดโดยระบบ. ตัวอย่างเช่น บนแพลตฟอร์มที่ใช้ Windows เส้นทางต้องมีความยาวน้อยกว่า 248 ตัวอักษร และชื่อไฟล์ต้องมีความยาวน้อยกว่า 260 ตัวอักษร.

SecurityException

ผู้เรียกไม่มีสิทธิ์เข้าถึงไดเรกทอรีที่มีอยู่.

NotSupportedException

หากไดเรกทอรีไม่อยู่ เส้นทางมีเครื่องหมายทวิภาค (:) ที่ไม่เป็นส่วนหนึ่งของป้ายชื่อไดรฟ์ (“C:").

ArgumentException

เส้นทางเป็นสตริงที่มีความยาวเป็นศูนย์ มีเพียงช่องว่าง หรือมีอักขระที่ไม่ถูกต้องหนึ่งตัวหรือมากกว่า. คุณสามารถสอบถามอักขระที่ไม่ถูกต้องได้โดยใช้วิธี System.IO.Path.GetInvalidPathChars. - หรือ - เส้นทางมีเครื่องหมายทวิภาค (:).

IOException

ไดเรกทอรีที่ระบุโดยเส้นทางเป็นไฟล์. - หรือ - ชื่อเครือข่ายไม่เป็นที่รู้จัก.

InvalidDataException

archive เสียหาย.

Save(string, XarSaveOptions)

บันทึก archive ไปยังไฟล์ปลายทางที่จัดเตรียมไว้.

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

พารามิเตอร์

destinationFileName string

เส้นทางของ archive ที่จะสร้าง. หากชื่อไฟล์ที่ระบุชี้ไปยังไฟล์ที่มีอยู่ จะถูกเขียนทับ.

saveOptions XarSaveOptions

ตัวเลือกในการบันทึก xar archive.

ข้อยกเว้น

ArgumentNullException

destinationFileName เป็น null.

InvalidOperationException

ไม่สามารถแก้ไข xar archive.

Save(Stream, XarSaveOptions)

บันทึก archive ไปยังสตรีมที่จัดเตรียมไว้.

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

พารามิเตอร์

output Stream

สตรีมปลายทาง.

saveOptions XarSaveOptions

ตัวเลือกในการบันทึก xar archive.

ข้อยกเว้น

ArgumentNullException

output เป็น null.

ArgumentException

output ไม่สามารถเขียน/อ่านได้ หรือไม่สามารถค้นหาได้.

InvalidOperationException

ไม่สามารถแก้ไข xar archive.

 แบบไทย