Árvore de páginas

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

Nome

Tipo

Descrição

Obrigatório

Referência

cGzip

caractere

Indica o nome do arquivo, no formato Gzip, cujo conteúdo será descompactado.

X

 

cOutDir

caractere

Indica o diretório onde o arquivo será descompactado.

X

 

lChangeCase

lógico

Se verdadeiro (.T.), nomes de arquivos e pastas serão convertidos para letras minúsculas; caso contrário, falso (.F.), não será feito nenhum ajuste no nome do arquivo informado. Valor padrão (.T.). Veja maiores informações em Observações.

 

 

Retorno

Nome

Tipo

Descrição

lRet

lógico

Retorna .T. se a descompactação for realizada com sucesso; caso contrário, retorna .F..

Observações

  • 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".
  • O parâmetro opcional lChangeCase foi introduzido a partir do build 7.00.131227A pois em sistemas LINUX/UNIX, existe a diferenciação entre maiúsculo e minúsculo em nomes de arquivos ou pastas. Quando este parâmetro for informado, terá prioridade sobre comportamento de Case Sensitive definido pelas chaves de ini CASESENSITIVE ou SERVERTYPE. Porem, quando não especificado o parâmetro, o valor padrão (.T.) fica condicionado ao que está configurado nessas chaves.
  • 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 cGzip e cOutDir independente do valor definido no parâmetro lChangeCase.

Exemplos

user function exemplo()
local lGzCompress := .F., lGzDecomp := .F.

// cria o arquivo gzip
lGzCompress := GzCompress( "\file1.txt", "\testdir\file.gz" )

// restaura o conteúdo do gzip
lGzDecomp := GzDecomp( "\testdir\file.gz", "\testdir2" )
return

Veja também

  • Sem rótulos