GzDecomp [AS]
Autor: Eurai Criado: 01/01/2016 Atualizado: 27/07/2021Descrição
Descompacta o conteúdo de um arquivo no formato gzip (GNU zip) do ambiente do servidor, a partir do rootpath, para um diretório no servidor. |
Sintaxe
GzDecomp( |
Parâmetros
Par | Nome | Tipo | Descrição | Default | Obg | Ref |
01 |
cGzip | Caracter | Indica o nome do arquivo, no formato Gzip, cujo conteúdo será descompactado | X | ||
02 | cOutDir | Caracter | Indica o diretório onde o arquivo será descompactado | X | ||
03 | lChangeCase | Boolean | Indica se colocará o nome dos arquivos em letra minúscula |
Retorno
Retorno | Tipo | Descrição |
lRet | Boolean |
Retorna .T. se a descompactação for realizada com sucesso; caso contrário, retorna .F. |
Exemplo
#INCLUDE "TOTVS.CH" User Function GzDecomp() Local lGzCompress := .F. Local lGzDecomp := .F. lGzCompress := GzCompress( "\Calculo.TXT", "\Arquivo.gz" ) If lGzCompress Conout( 'Compactado com Sucesso' ) lGzDecomp := GzDecomp( "\Arquivo.gz", "\descompactado" ) If lGzCompress Conout( 'Descompactado com Sucesso' ) Endif Endif Return( Nil )
Resultado
Informações adicionais
Essa função descompacta arquivos no formato gzip (GNU zip). |
GzDecomp trabalha somente com arquivos e diretórios localizados no servidor (a partir do rootPath do ambiente). Caso seja passado algum arquivo no cliente, é gerada uma exceção com a mensagem: "Only path on server are allowed" |
Caso o arquivo apontado pelo parâmetro cGzip ou o diretório de sáida apontado pelo parâmetro cOutDir não exista, a função retornará .F. e será exibido no console do AppServer a mensagem "File or Directory could not be found" |
Os caminhos apontados por cGzip e cOutDir 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 caminho 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 cFile e cGzip 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! 😎