Class SharArchive
Название пространства: Aspose.Zip.Shar Ассоциация: Aspose.Zip.dll (25.5.0)
Этот класс представляет собой резкий архивный файл.
public class SharArchive : IDisposable
Inheritance
Implements
Наследованные члены
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
path’ is null.
Заказчик не имеет требуемого разрешения на доступ.
path" пустая, содержит только белые пространства или содержит недействительные символы.
Доступ к файлу path" отказывается.
Указанный path", имя файла, или оба превышают максимальную длину, установленную системой. Например, на платформах на базе Windows, пути должны быть менее 248 символов, а имена файлов должны быть менее 260 символов.
Файл в path’ содержит колону (:) в середине строки.
Файл не найден.
Указанный маршрут является недействительным, например, находиться на немапированном диске.
Файл уже открыт.
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
Вступление в инстанцию.
Examples
using (FileStream sharFile = File.Open("archive.shar", FileMode.Create))
{
using (var archive = new SharArchive())
{
archive.CreateEntries("C:\folder", false);
archive.Save(sharFile);
}
}
Exceptions
sourceDirectory’ is null.
Вызовчик не имеет требуемого разрешения на доступ к sourceDirectory'.
sourceDirectory’ contains invalid characters such as “, <, >, or |.
Например, на платформах на базе Windows, пути должны быть менее 248 символов, а имена файлов должны быть менее 260 символов.
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
Вступление в инстанцию.
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
directory’ is null.
Вызовчик не имеет требуемого разрешения на доступ к directory”.
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
Вступление в инстанцию.
Examples
FileInfo fileInfo = new FileInfo("data.bin");
using (var archive = new SharArchive())
{
archive.CreateEntry("test.bin", fileInfo);
archive.Save("archive.shar");
}
Remarks
Если файл открывается немедленно с параметром, он блокируется до того момента, пока файл не будет удален.
Exceptions
name’ is null.
name’ is empty.
fileInfo’ is null.
CreateEntry(Стриг, Стриг, Боол)
Создайте единый вход в архиве.
public SharEntry CreateEntry(string name, string sourcePath, bool openImmediately = false)
Parameters
name
string
Название входа.
sourcePath
string
Путь к файлу для компрессии.
openImmediately
bool
Правда, если открыть файл сразу, то в противном случае открыть файл на архиве.
Returns
Вступление в инстанцию.
Examples
using (var archive = new SharArchive())
{
archive.CreateEntry("first.bin", "data.bin");
archive.Save("archive.shar");
}
Remarks
Название входа устанавливается только в пределах параметра.Название файла, предоставленное в параметре, не влияет на имя входа.
Если файл открывается немедленно с параметром, он блокируется до того момента, пока файл не будет удален.
Exceptions
sourcePath’ is null.
Заказчик не имеет требуемого разрешения на доступ.
sourcePath’ является пустым, содержит только белые пространства, или содержит недействительные символы. - или - Название файла, как часть
name’, превышает 100 символов.
Доступ к файлу sourcePath" отказывается.
Определенный sourcePath", имя файла, или оба превышают максимальную длину, установленную системой. Например, на платформах на базе Windows, пути должны быть менее 248 символов, а имена файлов должны быть менее 260 символов. - или -
name’ слишком длинный для острых.
Файл в sourcePath’ содержит колону (:) в середине строки.
CreateEntry(Стрем , Stream)
Создайте единый вход в архиве.
public SharEntry CreateEntry(string name, Stream source)
Parameters
name
string
Название входа.
source
Stream
Входный поток для входа.
Returns
Вступление в инстанцию.
Examples
using (var archive = new SharArchive())
{
archive.CreateEntry("data.bin", File.OpenRead("data.bin"));
archive.Save("archive.shar");
}
Exceptions
name’ is null.
source’ is null.
name’ is empty.
DeleteEntry(SharEntry)
Удаляется первое появление конкретного входа из списка входов.
public SharArchive DeleteEntry(SharEntry entry)
Parameters
entry
SharEntry
Вход, который нужно удалить из списка входов.
Returns
Вступление в инстанцию.
Examples
Вот как вы можете удалить все записи, за исключением последней:
using (var archive = new SharArchive("archive.shar"))
{
while (archive.Entries.Count > 1)
archive.DeleteEntry(archive.Entries[0]);
archive.Save(outputSharFile);
}
Exceptions
entry’ is null.
DeleteEntry(ИНТ)
Удаление входа из списка входа по индексу.
public SharArchive DeleteEntry(int entryIndex)
Parameters
entryIndex
int
Индекс, основанный на нуле, входа должен быть удален.
Returns
Архив с входом удален.
Examples
using (var archive = new SharArchive("two_files.shar"))
{
archive.DeleteEntry(0);
archive.Save("single_file.shar");
}
Exceptions
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
destinationFileName’ is a zero-length string, contains only white space, or contains one or more invalid characters as defined by System.IO.Path.InvalidPathChars.
destinationFileName’ is null.
Определенный destinationFileName’, имя файла, или оба превышают максимальную длину, установленную системой. Например, на платформах на базе Windows, маршруты должны быть менее 248 символов, а имена файлов должны быть менее 260 символов.
Указанная destinationFileName’ является недействительной (например, она находится на безкартированном диске).
При открытии файла произошла ошибка I/O.
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.
destinationFileName’ is in an invalid format.
Файл не найден.
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
output’ is null.
output’ is not writable. - or -
output’ is the same stream we extract from.