Ajude o site desativando o bloqueador de anúncio

ASSINE A NEWSLETTER

Cadastrando...
PIX uDesenv pix deposito

GzDecomp [AS]

Autor: Eurai Criado: 01/01/2016 Atualizado: 27/07/2021

Descriçã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
gzdecomp_-_resultado_01  

 

 

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! 😎