Como transformar um byte[] em File? (respondido)  XML
Índice dos Fóruns » Java Básico
Autor Mensagem
InsaneChess
JavaTeenager
[Avatar]

Membro desde: 22/04/2010 23:02:42
Mensagens: 194
Localização: São Paulo, SP
Offline

Pessoal, boa tarde.
Alguem sabe me informar como transformar um array de bytes em um objeto File?

O que eu necessito é um objeto File para ser usado apenas no código, não quero escrever ou referenciar nenhum arquivo físico na máquina.

O meu objetivo é o sequinte:

Tenho um arquivo criptografado com formato .txt.
Eu leio esse arquivo, descriptografo e transformo em um array de bytes.

Porém agora quero transforma-lo de array de bytes para File para utilizar no "FileInputStream(xxxArquivoDesejadoxxx)".
Porém não criar uma referencia fisica para ele em qualquer lugar da máquina da pessoa, mantendo apenas o arquivo criptografado salvo.

Será que deu pra entender

Abraços!!!






This message was edited 1 time. Last update was at 25/07/2011 15:58:28


MSN: diogo_chess@hotmail.com
Vamos estudar Java!!!
[MSN]
erickmelo
Thread.start()

Membro desde: 07/12/2006 12:30:30
Mensagens: 34
Localização: São Carlos-SP
Offline

Amigo,

Vc poderia converter o teu array de bytes para um InputStream..
http://download.oracle.com/javase/1.4.2/docs/api/java/io/ByteArrayInputStream.html

Aí depois vc trata normalmente como faria com uma inputStream pra arquivos...

Observe que ela é sub-classe de java.io.InputStream..

[]s
ViniGodoy
Moderador
[Avatar]

Membro desde: 11/12/2006 08:22:01
Mensagens: 20580
Localização: Curitiba/PR
Offline

Um File representa justamente um arquivo físico. Um array de bytes[] representa dados já lidos em memória. E o stream é só uma classe que encapsula um conjunto de dados qualquer, em qualquer canal.


Um FileOutputStream é um tipo especial de stream que lê a partir de arquivos físicos.


O stream que representa algo em memória é o ByteArrayInputStream:
http://download.oracle.com/javase/1.4.2/docs/api/java/io/ByteArrayInputStream.html


Se sua classe aceita um InputStream qualquer, use o ByteArray no lugar do File.

@ViniGodoy - Lattes

Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!

Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).

Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295
[WWW]
InsaneChess
JavaTeenager
[Avatar]

Membro desde: 22/04/2010 23:02:42
Mensagens: 194
Localização: São Paulo, SP
Offline

Obrigado a todos pela ajuda,
Conforme vocês me informaram....consegui o que queria utilizando o ByteArrayInputStream.

Tambem aproveitei para ler um pouco mais sobre os Streams...

Quem não souber muito sobre IO...segue um resumo em pdf criado por "Miguel Jonathan
" sobre Streams que achei muito bom.

Att,
Diogo Barbosa.
 Nome do arquivo Streams.pdf [Disk] Download
 Descrição
 Tamanho 79 Kbytes
 Baixado:  276 vez(es)


MSN: diogo_chess@hotmail.com
Vamos estudar Java!!!
[MSN]
MarcioCasteloBranco
JavaGuru
[Avatar]

Membro desde: 14/08/2009 16:00:15
Mensagens: 220
Offline

Valeu por compartilhar o pdf .
[MSN]
 
Índice dos Fóruns » Java Básico
Ir para:   
Powered by JForum 2.1.8 © JForum Team