Transferir arquivos por url

1 resposta
J

Boa tarde pessoal estou tentando transferir um arquivo de um diretório pra outro através de uma url, para isso peguei um exemplo aqui do fórum mesmo. Então o código ficou assim

public class Main {
    public static void main(String[] args) {
        gravaArquivoDeURL("http://127.0.0.1:8084/c://teste.txt", "D://teste.txt");
    }
    public static File gravaArquivoDeURL(String stringUrl, String pathLocal) {
        try {
            URL url = new URL(stringUrl);
            String nomeArquivoLocal = url.getPath();
            InputStream is = url.openStream();
            FileOutputStream fos = new FileOutputStream(pathLocal + nomeArquivoLocal);
            int umByte = 0;
            while ((umByte = is.read()) != -1) {
                fos.write(umByte);
            }
            is.close();
            fos.close();
            return new File(pathLocal + nomeArquivoLocal);

        } catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    }
}

Porem estou tendo o seguinte erro:

java.net.ConnectException: Connection refused: connect
        at java.net.PlainSocketImpl.socketConnect(Native Method)
        at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:351)
        at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:213)
        at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:200)
        at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
        at java.net.Socket.connect(Socket.java:529)
        at java.net.Socket.connect(Socket.java:478)
        at sun.net.NetworkClient.doConnect(NetworkClient.java:163)
        at sun.net.www.http.HttpClient.openServer(HttpClient.java:395)
        at sun.net.www.http.HttpClient.openServer(HttpClient.java:530)
        at sun.net.www.http.HttpClient.<init>(HttpClient.java:234)
        at sun.net.www.http.HttpClient.New(HttpClient.java:307)
        at sun.net.www.http.HttpClient.New(HttpClient.java:324)
        at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:970)
        at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:911)
        at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:836)
        at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1172)
        at java.net.URL.openStream(URL.java:1010)
        at download.Main.gravaArquivoDeURL(Main.java:18)
        at download.Main.main(Main.java:11)
CONSTRUÍDO COM SUCESSO (tempo total: 1 segundo)

Alguém tem alguma idéia do que pode ser?

1 Resposta

J

Bem embora ninguém tenha ajudado, vou postar como resolvi isso, para contribuir com outros que talvez passem pelo problema. Coloque o arquivo no meu sistema web para pegar a partir de lá o código ficou assim:

URL url = new URL("http://ip do Servidor:porta/meuSistemaWeb/teste.txt");
            InputStream is = url.openStream();
            FileOutputStream fos = new FileOutputStream("D://teste.txt");
            int umByte = 0;
            while ((umByte = is.read()) != -1) {
                fos.write(umByte);
            }
            is.close();
            fos.close();
Criado 9 de novembro de 2012
Ultima resposta 12 de nov. de 2012
Respostas 1
Participantes 1