Ir para conteúdo
  • Cadastre-se

dev botao

  • Este tópico foi criado há 556 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Membros Pro
Postado

Olá a todos,

Estou utilizando o método de classe abaixo para extrair o conteúdo de arquivos zipados:

https://docwiki.embarcadero.com/Libraries/Alexandria/en/System.Zip.TZipFile.ExtractZipFile

Nos testes que realizei, ao executar o método os arquivos existentes no .zip sobrescrevem os arquivos de mesmo nome no destino. É realmente esse o comportamento que eu quero, mas como não achei nada na documentação sobre isso quero confirmar se esse é o comportamento padrão dele ou se "eu tive sorte"?

Desde já agradeço a atenção de todos.

  • Consultores
Postado

Boa noite,

Provavelmente, não está especificado porque é um comportamento do SO permitir a sobreposição devido às permissões ou o arquivo em uso.

A tentativa de sobreposição ou não é condição da aplicação, o que pode haver é alguma propriedade no componente para optar, caso tenha sido tratado, veja se encontra algo na documentação com relação a isso.

  • Membros Pro
Postado

Boa noite @Renato Rubinho

Tudo bom meu amigo?

Citar

Provavelmente, não está especificado porque é um comportamento do SO permitir a sobreposição devido às permissões ou o arquivo em uso.

Mas a documentação na classe TFileStream, que menciona a sobreposição usando o valor fmCreate existe. Então creio que a ausência da mesma não seria por esse motivo.

Citar

A tentativa de sobreposição ou não é condição da aplicação

Como assim? Não entendi esse termo "condição da aplicação".

  • Consultores
Postado

Lembrando que estamos no "opiniômetro"... 😃

12 minutos atrás, bnobre disse:

Mas a documentação na classe TFileStream, que menciona a sobreposição usando o valor fmCreate existe

Neste caso entendo que a abordagem é diferente por se tratar de um arquivo que o conteúdo está sendo criado em memória pela aplicação.

Já no caso do zip, ele está extraindo arquivos que desconhece o conteúdo.

18 minutos atrás, bnobre disse:

Como assim? Não entendi esse termo "condição da aplicação".

Se você está desenvolvendo um método de extração e encontrar algum arquivo a ser sobreposto, não é o componente que sabe se deve sobrepor e sim o seu método, então a condição de sobrepor deve ser de acordo com a regra do seu método, perguntar ao usuario, optar por sempre ou nunca sobrepor.

44 minutos atrás, Renato Rubinho disse:

o que pode haver é alguma propriedade no componente para optar,

Por isso imagino que possa haver algo no componente para você escolher se deve ou não sobrepor.

  • Membros Pro
Postado
Citar

Lembrando que estamos no "opiniômetro"... 

Sim sim, com certeza kkkkkkkkkkkkkkkk

Citar

Por isso imagino que possa haver algo no componente para você escolher se deve ou não sobrepor.

Então... Não achei nada na documentação da Classe... A princípio ela sobrepõem e pronto, pelos testes que fiz.

Postei em um fórum gringo e a resposta foi que sobrepõem e pronto, sem opção... mas não consta nada na documentação.

https://en.delphipraxis.net/topic/9089-tzipfileextractzipfile-overwrite-files/?tab=comments#comment-75597

  • Curtir 1
  • Este tópico foi criado há 556 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.