Á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

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 ], [ lChangeCase ] )
--> lDecompress

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

Indica se colocará o nome dos arquivos em letra minúscula.

 

...

 

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()".
  • Os caminhos de cOutDir, cTarFile, e dos arquivos e/ou pastas contidos em cTarFile 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 nome 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 cOutDir e cTarFile independente do valor definido no parâmetro lChangeCase. Em ambiente Linux ou Mac, o nome dos arquivos respeita a diferenciação.

Exemplos

Bloco de código
themeEclipse
languagecpp
titleExemplo 1
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