RarArchive.RarArchive

RarArchive(string, RarArchiveLoadOptions)

का एक नया उदाहरण प्रारंभ करता हैRarArchive क्लास और कंपोज़ एंट्री लिस्ट को आर्काइव से निकाला जा सकता है।

public RarArchive(string path, RarArchiveLoadOptions loadOptions = null)
पैरामीटरप्रकारविवरण
pathStringपूरी तरह से योग्य या संग्रह फ़ाइल के सापेक्ष पथ।
loadOptionsRarArchiveLoadOptionsमौजूदा संग्रह को लोड करने के विकल्प।

अपवाद

अपवादस्थिति
ArgumentNullExceptionpath शून्य है।
SecurityExceptionकॉल करने वाले के पास एक्सेस करने के लिए आवश्यक अनुमति नहीं है।
ArgumentExceptionpath खाली है, केवल सफेद स्थान हैं, या अमान्य वर्ण हैं।
UnauthorizedAccessExceptionफ़ाइल तक पहुंचpath वर्जित किया गया है।
PathTooLongExceptionविष्तृतpath, फ़ाइल नाम, या दोनों सिस्टम-परिभाषित अधिकतम लंबाई से अधिक हैं। उदाहरण के लिए, Windows-आधारित प्लेटफ़ॉर्म पर, पथ 248 वर्णों से कम होने चाहिए और फ़ाइल नाम 260 वर्णों से कम होने चाहिए।
NotSupportedExceptionपर फाइल करेंpath स्ट्रिंग के बीच में एक कोलन (:) होता है।

टिप्पणियों

यह कंस्ट्रक्टर किसी प्रविष्टि को डिकम्प्रेस नहीं करता है। देखनाOpen डीकंप्रेसिंग के लिए विधि.

उदाहरण

निम्न उदाहरण एक आर्काइव को एक्सट्रेक्ट करता है, फिर a में पहली प्रविष्टि को डिकम्प्रेस करता हैमेमोरीस्ट्रीम.

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);
    }
}

यह सभी देखें


RarArchive(Stream, RarArchiveLoadOptions)

का एक नया उदाहरण प्रारंभ करता हैRarArchive क्लास और कंपोज़ एंट्री लिस्ट को आर्काइव से निकाला जा सकता है।

public RarArchive(Stream sourceStream, RarArchiveLoadOptions loadOptions = null)
पैरामीटरप्रकारविवरण
sourceStreamStreamसंग्रह का स्रोत।
loadOptionsRarArchiveLoadOptionsमौजूदा संग्रह को लोड करने के विकल्प।

अपवाद

अपवादस्थिति
ArgumentExceptionsourceStream खोजने योग्य नहीं है।
InvalidDataExceptionसंग्रह के लिए गलत हस्ताक्षर। - या - फ़ाइल RAR संग्रह नहीं है।
InvalidOperationException

टिप्पणियों

यह कंस्ट्रक्टर किसी प्रविष्टि को डिकम्प्रेस नहीं करता है। देखनाOpen डीकंप्रेसिंग के लिए विधि.

उदाहरण

निम्नलिखित उदाहरण पहली प्रविष्टि को डिक्रिप्ट और डिकम्प्रेस करता हैमेमोरीस्ट्रीम.

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);
    }
}

यह सभी देखें