Descrição
GzDecomp [AS] - 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( <cGzip>, <cOutDir>, <lChangeCase> ) |
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! 😎