Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
portuguese
Composition Setup
import.css=/download/attachments/3279126062824/newLayouttecnologia.css

Pagetitle
TarDecomp
TarDecomp

Função: TarDecomp

Restaura

...

os

...

arquivos

...

e

...

diretórios

...

contidos

...

em

...

um

...

arquivo

...

no

...

formato

...

TAR

...

(Tape

...

ARchive)

Sintaxe

Bloco de código
collapsefalse
TarDecomp( <
cArquivoTar>
 cTarFile >, <
cDirSaida>
 cOutDir >, [ @nFilesOut ]
) --> lDecompress Parâmetros/Elementos
, [ lChangeCase ] )

Parâmetros

Nome

Tipo

Descrição

Obrigatório

Referência

...

cTarFile

...

caractere

Indica o nome do arquivo ( com formato TAR ) cujo conteúdo será restaurado.

X

...

 

cOutDir

...

caractere

Indica o diretório onde os arquivos, contidos no arquivo TAR, serão restaurados.

X

...

 

nFilesOut

...

numérico

Retorna o número de arquivos extraídos na operação

...

.

 

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 verdadeiro (.T.), se a descompactação for realizada com sucesso; caso contrário, retorna falso (.F.).

Observações

  • 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".
  • nFilesOut está disponível em builds superiores a 7.00.111010A.
  • 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 <cTarFile> não exista, será exibida a mensagem "Server File not found on TarDecomp()"; caso não exista <cOutDir>, será exibida a mensagem "Server Directory not found on TarDecomp()".
  • Caso <cOutDir> seja uma string vazia, é gerada uma exceção com a mensagem: "Invalid empty target path for TarDecomp".
  • Se nada for extraído do arquivo, será exibida a mensagem: "No files extracted on TarDecomp()".
  • 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 cOutDir e cTarFile independente do valor definido no parâmetro lChangeCase.

Exemplos

Bloco de código
languagecpp
themeEclipse
linenumberstrue
collapsefalse
user function exemplo()
  local aItens := {}
  local tarFile := ""
  local 
lTarDecompress
lRet := .F.
  
  aAdd( aItens, "\file1.txt" )
  aAdd( aItens, "\file2.txt" )
  aAdd( aItens, "\file3.txt" )
  aAdd( aItens, "\testdir\folderA" )
  aAdd( aItens, "\testdir\folderB\file1-folderB.txt" )
  aAdd( aItens, "\testdir\folderB\file2-folderB.txt" )
  aAdd( aItens, "\testdir\folderB\file3-folderB.txt" )
  
  // cria o arquivo tar
  tarFile := tarCompress( aItens, "\testdir\file.tar" )
  
  // restaura o conteúdo do tar
  
lTarDecompress
lRet := tarDecomp( "\testdir\file.tar", "\testdir2" )
return

Abrangência

Protheus 10,

...

Protheus 11, Protheus 12

Veja

...

também