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.SharArchive, подготовленного к декомпрессии.

public SharArchive(string path)

Parameters

path string

Путь к источнику архива.

Exceptions

ArgumentNullException

path’ is null.

SecurityException

Заказчик не имеет требуемого разрешения на доступ.

ArgumentException

path" пустая, содержит только белые пространства или содержит недействительные символы.

UnauthorizedAccessException

Доступ к файлу path" отказывается.

PathTooLongException

Указанный path", имя файла, или оба превышают максимальную длину, установленную системой. Например, на платформах на базе Windows, пути должны быть менее 248 символов, а имена файлов должны быть менее 260 символов.

NotSupportedException

Файл в 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

Вызовчик не имеет требуемого разрешения на доступ к 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

Вызовчик не имеет требуемого разрешения на доступ к 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

sourcePath’ является пустым, содержит только белые пространства, или содержит недействительные символы. - или - Название файла, как часть name’, превышает 100 символов.

UnauthorizedAccessException

Доступ к файлу sourcePath" отказывается.

PathTooLongException

Определенный sourcePath", имя файла, или оба превышают максимальную длину, установленную системой. Например, на платформах на базе Windows, пути должны быть менее 248 символов, а имена файлов должны быть менее 260 символов. - или - name’ слишком длинный для острых.

NotSupportedException

Файл в sourcePath’ содержит колону (:) в середине строки.

CreateEntry(Стрем , Stream)

Создайте единый вход в архиве.

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

Определенный destinationFileName’, имя файла, или оба превышают максимальную длину, установленную системой. Например, на платформах на базе Windows, маршруты должны быть менее 248 символов, а имена файлов должны быть менее 260 символов.

DirectoryNotFoundException

Указанная 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.

 Русский