Ler e escrever fluxo de dados  XML
Índice dos Fóruns » Java Avançado
Autor Mensagem
ganondorfan
JavaChild
[Avatar]

Membro desde: 27/08/2010 15:35:19
Mensagens: 145
Offline

Boa tarde pessoal,

Eu gostaria de saber como ler um arquivo byte a byte, e escrevê-lo novamente no disco.
Eu estava tentando com o FileInputStream, entretanto não estou conseguindo trabalhar com ele.

So pra esclarecer, não quero ler caracteres, nem salvar um arquivo de texto, quero poder ler qualquer fluxo de dados e salva-lo novamente no disco.



Att. Paulo

This message was edited 1 time. Last update was at 10/09/2010 14:43:30


for (int i = 0; i<=fimDoMundo; i++){
continuarVivendo();
}
[MSN]
andredecotia
JWizard
[Avatar]

Membro desde: 19/10/2009 14:37:32
Mensagens: 2267
Localização: São Paulo
Offline

Acho que fiz isso quando fiz o FJ-11 da Caelum. Dê uma olhadinha no e-book que é free disponibilizado no site.

--
André AS


Analista Programador Java Web freelancer / home office
Linkedin: http://www.linkedin.com/profile/view?id=41470291&trk=tab_pro

[Email] [MSN] [ICQ]
ganondorfan
JavaChild
[Avatar]

Membro desde: 27/08/2010 15:35:19
Mensagens: 145
Offline

Não consigo baixar o PDF, sera que é só comigo isso?

for (int i = 0; i<=fimDoMundo; i++){
continuarVivendo();
}
[MSN]
ganondorfan
JavaChild
[Avatar]

Membro desde: 27/08/2010 15:35:19
Mensagens: 145
Offline

Bom a respeito da apostila da Caelum , realmente muito formulada, embora meu problema não seja abordado diretamente lá.

O meu codigo segue abaixo:


Ele quase funciona, no caso do teste o arquivo é uma imagem, porem a imagem é salva pela metade.
Será que o problema é o tamanho do meu vetor de bytes?
Como descobrir o tamanho em bytes antes de salvar?

This message was edited 1 time. Last update was at 10/09/2010 16:03:15


for (int i = 0; i<=fimDoMundo; i++){
continuarVivendo();
}
[MSN]
arthurmenezes
JavaChild

Membro desde: 28/05/2008 10:40:02
Mensagens: 107
Offline




tenta isso ai cara... DataInputStream pra leitura DataOutPutStream pra escrita.. se não me engano é essa parte da I/O que trabalha com byte

espero ter ajudado
Djonatah
JavaGuru
[Avatar]

Membro desde: 11/05/2007 15:38:09
Mensagens: 204
Localização: São Bento do Sul - SC
Offline

eu vejo dois problemas no exemplo que vc passou:
1) o arquivo de escrita não foi fechado
2) o arquivo de imagem (que está sendo lido) tem mais de 1024 bytes.


Geralmente a leitura de uma stream é realizado dentro de um laço de repetição. Baseado no retorno do método read() (que retorna a qtde de bytes lidos ou -1 quando o fim do arquivo foi encontrado) é que se sabe quando se chega ao fim do arquivo. Então eu faria algo como:




Não testei o código, mas deve funcionar..

This message was edited 1 time. Last update was at 10/09/2010 18:10:13


--------------------------------------------------
" Daria tudo o que sei, pela metade do que ignoro " - Descartes

" Tudo tem seu tempo, cada coisa tem sua ocasiao " - Eclesiastes 3
[MSN]
 
Índice dos Fóruns » Java Avançado
Ir para:   
Powered by JForum 2.1.8 © JForum Team