Class SharArchive

Class SharArchive

Nome do espaço: Aspose.Zip.Shar Assembleia: Aspose.Zip.dll (25.5.0)

Esta classe representa um arquivo escuro.

public class SharArchive : IDisposable

Inheritance

object SharArchive

Implements

IDisposable

Membros herdados

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

Constructors

SharArchive()

Inicia uma nova instância da classe Aspose.Zip.Shar.SharArchive.

public SharArchive()

Examples

O exemplo a seguir mostra como comprimir um arquivo.

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

SharArchive(Redação)

Inicia uma nova instância da classe Aspose.Zip.Shar.SharArchive preparada para a decompressão.

public SharArchive(string path)

Parameters

path string

O caminho para a fonte do arquivo.

Exceptions

ArgumentNullException

path’ is null.

SecurityException

O requerente não tem a permissão necessária para o acesso.

ArgumentException

O path’ é vazio, contém apenas espaços brancos, ou contém caracteres inválidos.

UnauthorizedAccessException

O acesso ao arquivo path" é negado.

PathTooLongException

O nome de arquivo especificado path", ou ambos excede o comprimento máximo definido pelo sistema. Por exemplo, em plataformas baseadas no Windows, os caminhos devem ser menores de 248 caracteres, e os nomes de arquivo devem ser menores de 260 caracteres.

NotSupportedException

O arquivo no path’ contém uma coluna (:) no meio da linha.

FileNotFoundException

O arquivo não foi encontrado.

DirectoryNotFoundException

O caminho especificado é inválido, como estar em uma unidade não mapeada.

IOException

O arquivo já está aberto.

Properties

Entries

Obtenha entradas do tipo Aspose.Zip.Shar.SharEntry que constituem o arquivo.

public ReadOnlyCollection<sharentry> Entries { get; }

Valor da propriedade

ReadOnlyCollection e o PT; SharEntry >

Methods

CreateEntries(Remoção, Bool)

Adicione ao arquivo todos os arquivos e diretórios repetidamente no diretório dado.

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

Parameters

sourceDirectory string

Diretório para compressão.

includeRootDirectory bool

Indica se incluir o diretório de raiz ou não.

Returns

SharArchive

A instância de entrada.

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

O chamador não tem a permissão necessária para acessar sourceDirectory'.

ArgumentException

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

PathTooLongException

O caminho especificado, o nome de arquivo, ou ambos, excede o comprimento máximo definido pelo sistema. Por exemplo, em plataformas baseadas no Windows, os caminhos devem ser menores de 248 caracteres, e os nomes de arquivo devem ser menores de 260 caracteres.

IOException

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

CreateEntries(DiretórioInfo, Bool)

Adicione ao arquivo todos os arquivos e diretórios repetidamente no diretório dado.

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

Parameters

directory DirectoryInfo

Diretório para compressão.

includeRootDirectory bool

Indica se incluir o diretório de raiz ou não.

Returns

SharArchive

A instância de entrada.

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

O chamador não tem a permissão necessária para aceder ao directory”.

IOException

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

CreateEntry(Título: FileInfo, Bool)

Crie uma única entrada dentro do arquivo.

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

Parameters

name string

O nome da entrada.

fileInfo FileInfo

Os metadados do arquivo ou folha para ser comprimido.

openImmediately bool

É verdade, se abrir o arquivo imediatamente, caso contrário, abrir o arquivo em arquivo de armazenamento.

Returns

SharEntry

A instância de entrada.

Examples

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

Remarks

Se o arquivo for aberto imediatamente com o parâmetro, ele será bloqueado até que o arquivo seja apagado.

Exceptions

ArgumentNullException

name’ is null.

ArgumentException

name’ is empty.

ArgumentNullException

fileInfo’ is null.

CreateEntry(Título: String, String, Bool)

Crie uma única entrada dentro do arquivo.

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

Parameters

name string

O nome da entrada.

sourcePath string

O caminho para o arquivo ser comprimido.

openImmediately bool

É verdade, se abrir o arquivo imediatamente, caso contrário, abrir o arquivo em arquivo de armazenamento.

Returns

SharEntry

A instância de entrada.

Examples

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

Remarks

O nome de entrada é definido apenas dentro do parâmetro.O nome de arquivo fornecido no parâmetro não afeta o nome de entrada.

Se o arquivo for aberto imediatamente com o parâmetro, ele será bloqueado até que o arquivo seja apagado.

Exceptions

ArgumentNullException

sourcePath’ is null.

SecurityException

O requerente não tem a permissão necessária para o acesso.

ArgumentException

O sourcePath’ é vazio, contém apenas espaços brancos, ou contém caracteres inválidos. - ou - Nome do arquivo, como parte do name’, excede 100 símbolos.

UnauthorizedAccessException

O acesso ao arquivo sourcePath’ é negado.

PathTooLongException

O especificado sourcePath’, nome de arquivo, ou ambos exceder o comprimento máximo definido pelo sistema. Por exemplo, em plataformas baseadas no Windows, os caminhos devem ser menores de 248 caracteres, e os nomes de arquivo devem ser menores de 260 caracteres. - ou - name’ é demasiado longo para escuro.

NotSupportedException

O arquivo em sourcePath’ contém uma coluna (:) no meio da linha.

CreateEntry(Remoção, Stream)

Crie uma única entrada dentro do arquivo.

public SharEntry CreateEntry(string name, Stream source)

Parameters

name string

O nome da entrada.

source Stream

O fluxo de entrada para a entrada.

Returns

SharEntry

A instância de entrada.

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)

Remove a primeira ocorrência de uma entrada específica da lista de entrada.

public SharArchive DeleteEntry(SharEntry entry)

Parameters

entry SharEntry

A entrada para remover da lista de entradas.

Returns

SharArchive

A instância de entrada.

Examples

Aqui está como você pode remover todas as entradas exceto a última:

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(Int)

Remova a entrada da lista de entrada por índice.

public SharArchive DeleteEntry(int entryIndex)

Parameters

entryIndex int

O índice baseado em zero da entrada a ser removido.

Returns

SharArchive

O arquivo com a entrada foi apagado.

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(Bolha)

Exerce tarefas definidas por aplicação associadas à libertação, libertação ou restauração de recursos não gerenciados.

protected virtual void Dispose(bool disposing)

Parameters

disposing bool

Se os recursos gerenciados devem ser dissolvidos.

Dispose()

Exerce tarefas definidas por aplicação associadas à libertação, libertação ou restauração de recursos não gerenciados.

public void Dispose()

Save(Redação)

Salve arquivo para um arquivo de destino fornecido.

public void Save(string destinationFileName)

Parameters

destinationFileName string

Se o nome do arquivo especificado aponta para um arquivo existente, ele será sobreescrito.

Examples

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

Remarks

É possível salvar um arquivo no mesmo caminho que foi carregado. no entanto, isso não é recomendado porque esta abordagem usa a cópia para um arquivo temporário.

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

O nome de arquivo especificado destinationFileName, ou ambos excede o comprimento máximo definido pelo sistema. Por exemplo, em plataformas baseadas no Windows, os caminhos devem ser menores de 248 caracteres, e os nomes de arquivo devem ser menores de 260 caracteres.

DirectoryNotFoundException

A destinationFileName’ especificada é invalida (por exemplo, está em um disco não mapeado).

IOException

Um erro I/O ocorreu ao abrir o arquivo.

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

O arquivo não foi encontrado.

Save(Stream)

Salve arquivo para o fluxo fornecido.

public void Save(Stream output)

Parameters

output Stream

fluxo de destino.

Examples

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

Remarks

Tem que ser escrita.

Exceptions

ArgumentNullException

output’ is null.

ArgumentException

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

 Português