Cópia de arquivo

5 respostas
F

Oi pessoal,

gostaria de saber como fazer uma copia de um arquivo de um cliente para um servidor sem usar o “write” tradicional dos componentes file do java.A questão é que eu quero fazer uma cópia exata do arquivo do cliente para o servidor no que diz respeito aos seus atributos de arquivo locais, como se eu desse um “copy”(comando do DOS).

Tudo isso pq tive problema de permissão na rede…alguem pode me dizer o código que pode fazer isso…ja procurei nos metodos das classes “file”…e todas elas dão um “write” no final,ou seja, recriam o arquivo, so que eu não quero recriar…na verdade eu quero uma copia exata do arquivo com todos seus atributos como estão.

Grato

5 Respostas

Daniel_Quirino_Olive
Adivinha como são implementados os “copy/cp”? São meros “leia o arquivo aqui e reescreva-o em outro lugar”.

Ou seja, você vai ter que fazer algo do tipo:

:arrow: Abre um FileInputStream para ler o arquivo que vai ser copiado;

:arrow: Abra um FileOutputStream para escrever o conteúdo lido em outro diretório;

:arrow: Leia o conteúdo deste arquivo até o final dele (ou seja, até que FileInputStream.read() != -1);

:arrow: Pegue o conteúdo lido e jogue no FileOutputStream.

:arrow: Descarregue os dois Stream (método flush()) e feche-os;

Basicamente é isso. Se você precisa fazer isso remotamente, ou seja, transferir sua arquivo de uma máquina para outra, use sockets e substitua os Streams por Stream apropriados.
F

Mas é exatamente isso que eu não quero…não quero recriar o arquivo no servidor…o meu problema é extamanete este…eu preciso copiar sem recriar…entendeu ???

louds

copia sem copiar? usa 1 filesystem remoto ou distribuido então.
ou então desiste de usar java porque voce não vai conseguir copiar todo meta-data do arquivo, fora que voce ainda depende do usuario corrente que o programa vai estar rodando para fazer isso corretamente.

F

mas isso não pode serfeito em java…eu acho que sim…não é possivel que o java não tenha uma solução para isso…

fenrir

Se você vai copiar um arquivo para um lugar, você o estará recriando nesse lugar. Não há mágica nisso! :wink:

Se você mover o arquivo, primeiro ele será copiado, e depois o “original” será excluído.

Criado 3 de outubro de 2003
Ultima resposta 3 de out. de 2003
Respostas 5
Participantes 4