tarDecomp [AS]
Autor: Eurai Criado: 01/01/2016 Atualizado: 27/07/2021Descrição
Restaura os arquivos e diretórios contidos em um arquivo no formato TAR (Tape ARchive). |
Sintaxe
tarDecomp( |
Parâmetros
Par | Nome | Tipo | Descrição | Default | Obg | Ref |
01 |
cTarFile | Caracter | Indica o nome do arquivo ( com formato TAR ) cujo conteúdo será restaurado | X | ||
02 | cOutDir | Caracter | Indica o diretório onde os arquivos, contidos no arquivo TAR, serão restaurados | X | ||
03 | nFilesOut | Numérico | Retorna o número de arquivos extraídos na operação | X | ||
04 | lChangeCase | Boolean | Indica se colocará o nome dos arquivos em letra minúscula |
Retorno
Retorno | Tipo | Descrição |
lRet | Boolean |
Retorna verdadeiro (.T.), se a descompactação for realizada com sucesso; caso contrário, retorna falso (.F.) |
Exemplo
#INCLUDE "TOTVS.CH" User Function tarDecomp() Local cNomeArq := ''tarDecomp Local aItens := {} aAdd( aItens, "\calculo.txt" ) aAdd( aItens, "\path\calculo.LOG" ) cNomeArq := tarCompress( aItens, "\arquivos.tar" ) If !Empty( cNomeArq ) Conout( 'Compactado com Sucesso' ) If tarDecomp( "\arquivos.tar", "\descompactar" ) Conout( 'Descompactado com Sucesso' ) Endif Endif Return( Nil )
Resultado
Informações adicionais
Esta função somente extrai arquivos agrupados no formato TAR |
Esta função trabalha somente com arquivos e diretórios localizados no servidor (a partir do rootPath do ambiente) |
Caso seja passado em cTarFile o caminho de algum arquivo no cliente, é gerada uma exceção com a mensagem: "Only path file on server are allowed"; caso seja passado em cOutDir o caminho de alguma pasta no cliente, é gerada uma exceção com a mensagem: "Only path dir on server are allowed" |
Antes de extrair o arquivo, verifique o espaço em disco, disponível na unidade de disco, e/ou as permissões para criação e alteração de arquivos e diretórios |
Caso |
Caso |
Se nada for extraído do arquivo, será exibida a mensagem: "No files extracted on TarDecomp()" |
Os caminhos de cOutDir, cTarFile, e dos arquivos e/ou pastas contidos em cTarFile serão convertidos para letra minúscula. A partir da build 7.00.121227A, os caminhos não serão convertidos para letra minúscula para Logix |
A partir da build 7.00.120420A, o comportamento de mudança para letra minúscula, para Linux, pode ser alterado modificando o valor da chave CaseSensitive, na seção General, do arquivo ini do TOTVS | Application Server. Essa mudança impacta outras funções que também tratam arquivos |
A partir da build 7.00.131227A foi criado o parâmetro lChangeCase, que se for definido com o valor .T., altera o nome dos arquivos para letra minúscula, e se for .F. não altera o nome dos arquivos. O valor padrão do parâmetro é .T. |
Em ambiente Windows, os nomes de arquivos não possuem diferenciação entre maiúsculo e minúsculo, logo, a função conseguirá tratar os arquivos apontados por cOutDir e cTarFile independente do valor definido no parâmetro lChangeCase. Em ambiente Linux ou Mac, o nome dos arquivos respeita a diferenciação |
Gostou? Compartilhe com seus amigos e deixe um comentário! 😎