Mover, copiar e apagar arquivos. Tem API?

5 respostas
martui

:scrambleup: Existe alguma API de Java para operações com arquivos (e, quem sabe diretórios) na máquina local?

Quando digo operações, quero dizer:

:arrow: Mover arquivos no HD (ou para outro HD local ou na rede)
:arrow: Copiar arquivos no HD (ou para outro HD local ou na rede)
:arrow: Apagar arquivos no HD (ou para outro HD local ou na rede)

Existe algo no núcleo java ou nos javax pra fazer coisas desse tipo? Se não tiver, existe alguma API que usa JNI conhecida por alguém que faça o serviço? Tá bom que eu poderia usar linhas de comando com Runtime, mas acho isso meio porcão…

5 Respostas

Rodrigo_Vieira_Pinto

veio, claro que tem!! java é java.
Ai vai uma sugestao de codigo:

private File arquivoACopiar, ArquivoSaida;
    private FileReader in;
    private FileWritter out;
//enviando o arquivo para o local desejado

try

{

arquivoACopiar = new File(nomeOriginalArquivoComCaminho);

arquivoSaida = new File(nomeCopiaArquivoComCaminho);
in = new FileReader(arquivoACopiar);
        out = new FileWriter(arquivoSaida);
        int c;
        
        progressoDeTransmissao.setText("Enviando arquivo");
        while ((c = in.read()) != -1)
        {                 
            out.write(c);
        }             
        in.close();
        out.close();  
    }
    catch(IOException e)
    {
        //mensagem de erro (indica tbm o tipo de erro)
        System.out.println("Erro: - " + e.getMessage());
    }

com ele vc envia o arquivo para onde quiser.

martui

:scrambleup: É verdade… Nunca tinha pensado nisso com essa abordagem… Mas isso vale para copiar arquivos. E para apagar? Para mover, basta copiar e depois apagar o original… Mas… Como eu apagaria? E, não que eu não tenha gostado da solução, achei genial, muito estilosa, mas… Tem API específicamente pra isso no núcleo java?

danieldestro

A própria classe java.io.File já tem algumas operações.
Dá uma lida na API.

J

File arquivo = new File(“c:\teste.txt”);
arquivo.renameTo(new File(“c:\minhapasta\teste.txt”));

Felagund

experimente buscar a api nio, muito mias rapido e melhor para manipular arquivos.

[]'s

Criado 16 de julho de 2004
Ultima resposta 15 de jul. de 2009
Respostas 5
Participantes 5