Alguém sabe como tranformar um array de bytes para um file?

2 respostas
A

Estou fazendo um download de um arquivo que esta gravado no banco. Só que arquivo esta sendo gravado como um array de bytes[] , e preciso recuperar o nome e o tipo do arquivo , soh que nao consigo descobrir uma maneira de fazer isso

Entao alguem sabe outra maneira para recuperar o valor do name do arquivo e o tipo ???

Este é o meu código atual , que tenho que alterar o anexo.doc para o nome do arquivo salvo no banco …

response.setContentType(application/doc);

response.setHeader( Content-Disposition, attachment; filename=+ anexo.doc );

response.setContentLength(bytes.length);

ServletOutputStream outputStream = response.getOutputStream();

outputStream.write(bytes, 0, bytes.length);

outputStream.flush();

outputStream.close(); :shock:  <img src="https://cdn.jsdelivr.net/gh/twitter/twemoji@14/assets/72x72/c.pngry.png?v=9" title=":cry:" class="emoji" alt=":cry:">

2 Respostas

A

Somente pelo array de bytes não dá pra recuperar essas informações… vc deve ter essas informações no banco, em outras colunas…

T

Tanto que isso é verdade, que mesmo se você soubesse que o arquivo é sempre Microsoft Word, dá para determinar um monte de informação dentro dele, mas não o nome do arquivo.

Por exemplo, no arquivo circular2926.doc que pode ser baixado do site da Febraban, há as seguintes informações (que podem ser vistas com o Windows Explorer, solicitando as Properties do arquivo e clicando na tab Summary:

title = CARTA-CIRCULAR Nº 2926
template = Normal
Pages = 1
Word Count - 889
Character Count = 5071
Line Count = 42
Paragraph Count = 10
Scale = No
Links Dirty? = 0
Autor = Dafne
Last Saved By = Dafne
Revision Number = 44
Application Name = Microsoft Word 8.0
Company = Febraban-Fed.Bras.Assoc.Bcos
Date Created = 26/7/2000 09:41
Date Last Saved = 28/7/2000 14:39

mas não há o nome do arquivo, que pode ser alterado com um simples “rename”.

Criado 21 de janeiro de 2005
Ultima resposta 21 de jan. de 2005
Respostas 2
Participantes 3