Class SharArchive

Class SharArchive

Името на пространството: Aspose.Zip.Shar Асамблея: Aspose.Zip.dll (25.5.0)

Този клас представлява остър архивен файл.

public class SharArchive : IDisposable

Inheritance

object SharArchive

Implements

IDisposable

наследници

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

Constructors

SharArchive()

Aspose.Zip.Shar.SharArchive.

public SharArchive()

Examples

Следващият пример показва как да компресирате файл.

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

SharArchive(Стрий)

Иницијализира нова инстанция на клас Aspose.Zip.Shar.Archive, подготвен за декомпресиране.

public SharArchive(string path)

Parameters

path string

Пътят към източника на архива.

Exceptions

ArgumentNullException

path’ is null.

SecurityException

Призователят няма изискваното разрешение за достъп.

ArgumentException

Пътят " е празен, съдържа само бели пространства или съдържа невалидни знаци.

UnauthorizedAccessException

code class=“paramref”>path.

PathTooLongException

code class=“paramref”>path", име на файла, или и двете надвишават максималната дължина, определена от системата. например, на платформи, базирани на Windows, пътеките трябва да са по-малко от 248 знака, а имената на файла трябва да са по-малко от 260.

NotSupportedException

code class=“paramref”>path.

FileNotFoundException

Документът не е намерен.

DirectoryNotFoundException

Определеният маршрут е невалиден, като например да се намира на безкартиран диск.

IOException

Филмът вече е отворен.

Properties

Entries

Aspose.Zip.Shar.SharEntry.

public ReadOnlyCollection<sharentry> Entries { get; }

стойност на имота

ReadOnlyCollection < SharEntry >

Methods

CreateEntries(Стрелец, Боул)

Добавете към архива всички файлове и директории отново и отново в дадена директория.

public SharArchive CreateEntries(string sourceDirectory, bool includeRootDirectory = true)

Parameters

sourceDirectory string

Директор за компресиране.

includeRootDirectory bool

Показва дали да се включи самата коренна директория или не.

Returns

SharArchive

Инстанция за влизане.

Examples

using (FileStream sharFile = File.Open("archive.shar", FileMode.Create))
{
    using (var archive = new SharArchive())
    {
        archive.CreateEntries("C:\folder", false);
        archive.Save(sharFile);
    }
}

Exceptions

ArgumentNullException

sourceDirectory’ is null.

SecurityException

code class=“paramref”>sourceDirectory'.

ArgumentException

sourceDirectory’ contains invalid characters such as “, <, >, or |.

PathTooLongException

Windows, пътеките трябва да са по-малко от 248 знака, а имената на файловете трябва да са по-малко от 260.

IOException

sourceDirectory’ stands for a file, not for a directory.

CreateEntries(Директива, Bool)

Добавете към архива всички файлове и директории отново и отново в дадена директория.

public SharArchive CreateEntries(DirectoryInfo directory, bool includeRootDirectory = true)

Parameters

directory DirectoryInfo

Директор за компресиране.

includeRootDirectory bool

Показва дали да се включи самата коренна директория или не.

Returns

SharArchive

Инстанция за влизане.

Examples

using (FileStream sharFile = File.Open("archive.shar", FileMode.Create))
{
    using (var archive = new SharArchive())
    {
        archive.CreateEntries(new DirectoryInfo("C:\folder"), false);
        archive.Save(sharFile);
    }
}

Exceptions

ArgumentNullException

directory’ is null.

SecurityException

code class=“paramref”>directory'.

IOException

directory’ stands for a file, not for a directory.

CreateEntry(Стъпка, FileInfo, Bool)

Създаване на един вход в архива.

public SharEntry CreateEntry(string name, FileInfo fileInfo, bool openImmediately = false)

Parameters

name string

Името на входа.

fileInfo FileInfo

метаданните на файла или папката, които трябва да бъдат компресирани.

openImmediately bool

Вярно е, че ако отворите файла веднага, в противен случай отворете файлът на архива.

Returns

SharEntry

Инстанция за влизане.

Examples

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

Remarks

Ако файлът се отваря незабавно с параметър, той се блокира, докато архивите не бъдат изтрити.

Exceptions

ArgumentNullException

name’ is null.

ArgumentException

name’ is empty.

ArgumentNullException

fileInfo’ is null.

CreateEntry(Стринг, Стринг и Боол)

Създаване на един вход в архива.

public SharEntry CreateEntry(string name, string sourcePath, bool openImmediately = false)

Parameters

name string

Името на входа.

sourcePath string

Пътят към файла да бъде компресиран.

openImmediately bool

Вярно е, че ако отворите файла веднага, в противен случай отворете файлът на архива.

Returns

SharEntry

Инстанция за влизане.

Examples

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

Remarks

Името на файла, предоставено в параметър, не засяга името на входа.

Ако файлът се отваря незабавно с параметър, той се блокира, докато архивите не бъдат изтрити.

Exceptions

ArgumentNullException

sourcePath’ is null.

SecurityException

Призователят няма изискваното разрешение за достъп.

ArgumentException

code class=“paramref”>sourcePath’ е празен, съдържа само бели пространства, или съдържа невалидни знаци. - или - Име на файла, като част от name’, надвишава 100.

UnauthorizedAccessException

code class=“paramref”>sourcePath.

PathTooLongException

code class=“paramref”>sourcePath’, име на файла, или и двете надвишават максималната дължина, определена от системата. например, на платформи, базирани на Windows, пътеките трябва да са по-малко от 248 знака, а имената на файла трябва да са по-малко от 260 знака. - или - name.

NotSupportedException

code class=“paramref”>sourcePath.

CreateEntry(Стрий, Стрий)

Създаване на един вход в архива.

public SharEntry CreateEntry(string name, Stream source)

Parameters

name string

Името на входа.

source Stream

Входният поток за входа.

Returns

SharEntry

Инстанция за влизане.

Examples

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

Exceptions

ArgumentNullException

name’ is null.

ArgumentNullException

source’ is null.

ArgumentException

name’ is empty.

DeleteEntry(SharEntry)

Премахва първото възникване на конкретен вход от списъка.

public SharArchive DeleteEntry(SharEntry entry)

Parameters

entry SharEntry

Входът трябва да бъде премахнат от списъка с вход.

Returns

SharArchive

Инстанция за влизане.

Examples

Ето как можете да премахнете всички записи, с изключение на последното:

using (var archive = new SharArchive("archive.shar"))
{
    while (archive.Entries.Count &gt; 1)
        archive.DeleteEntry(archive.Entries[0]);
    archive.Save(outputSharFile);
}

Exceptions

ArgumentNullException

entry’ is null.

DeleteEntry(инт)

Премахване на входа от списъка по индекс.

public SharArchive DeleteEntry(int entryIndex)

Parameters

entryIndex int

Индексът на входа, базиран на нула, трябва да бъде премахнат.

Returns

SharArchive

Архивът с входа е изтрит.

Examples

using (var archive = new SharArchive("two_files.shar"))
{
    archive.DeleteEntry(0);
    archive.Save("single_file.shar");
}

Exceptions

ArgumentOutOfRangeException

entryIndex’ is less than 0.-or- entryIndex’ is equal to or greater than ‘Entries’ count.

Dispose(Боул)

Извършва задачите, определени от приложението, свързани с освобождаването, изтеглянето или презареждането на неконтролирани ресурси.

protected virtual void Dispose(bool disposing)

Parameters

disposing bool

Трябва ли да се премахнат управляваните ресурси.

Dispose()

Извършва задачите, определени от приложението, свързани с освобождаването, изтеглянето или презареждането на неконтролирани ресурси.

public void Dispose()

Save(Стрий)

Съхранява архиви към предоставен дестинационен файл.

public void Save(string destinationFileName)

Parameters

destinationFileName string

Ако посоченото име на файла указва на съществуващ файл, той ще бъде надписано.

Examples

using (var archive = new SharArchive())
{
    archive.CreateEntry("entry1", "data.bin");        
    archive.Save("archive.shar");
}

Remarks

Възможно е да се съхранява архив по същия път, от който е изтеглен. обаче, това не се препоръчва, защото този подход използва копиране на временно файл.

Exceptions

ArgumentException

destinationFileName’ is a zero-length string, contains only white space, or contains one or more invalid characters as defined by System.IO.Path.InvalidPathChars.

ArgumentNullException

destinationFileName’ is null.

PathTooLongException

code class=“paramref”>destinationFileName’, име на файла, или и двете надвишават максималната дължина, определена от системата. например, на платформи, базирани на Windows, пътеките трябва да са по-малко от 248 символа, а имената на файла трябва да са по-малко от 260.

DirectoryNotFoundException

code class=“paramref”>destinationFileName).

IOException

Една I/O грешка се появи при отваряне на файла.

UnauthorizedAccessException

destinationFileName’ specified a file that is read-only and access is not Read.-or- path specified a directory.-or- The caller does not have the required permission.

NotSupportedException

destinationFileName’ is in an invalid format.

FileNotFoundException

Документът не е намерен.

Save(Stream)

Съхранява архиви към предоставения поток.

public void Save(Stream output)

Parameters

output Stream

Пътят на дестинацията.

Examples

using (FileStream sharFile = File.Open("archive.shar", FileMode.Create))
{
    using (var archive = new SharArchive())
    {
        archive.CreateEntry("entry1", "data.bin");        
        archive.Save(sharFile);
    }
}

Remarks

Трябва да е писателно.

Exceptions

ArgumentNullException

output’ is null.

ArgumentException

output’ is not writable. - or - output’ is the same stream we extract from.

 Български