Odczyt pliku xml znajdującego się na serwerze

0

Witam, znalazłem dużo poradników jak czytać i pracować z plikami xml, mam jednak następujące pytanie:
Co jeśli plik znajduje się na serwerze, tzn gdzieś w internecie? Próbowałem stworzyć InputStream w oparciu o URL ww. pliku, jednak nie moge w ten sposób nic zdziałać. W przeglądarce bez problemu mi się wyświetla plik, czy mogę jakoś zrobić sobie jego lokalną kopię, ewentualnie jak się pracuje z takim zdalnym plikiem?

Pozdrawiam

0

chyba lepiej, jeśli zrobisz lokalną kopię

0

Tylko nie jestem pewien jak taką kopię utworzyć.

Pozdrawiam

0
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.URL;


public class Downloader {
    private static final int BUFFER_SIZE = 1024;

    public void downloadFile(URL source, File destination) throws IOException {
        InputStream input = null;
        OutputStream output = null;
        try {
            input = source.openStream();
            output = new FileOutputStream(destination);

            final byte[] buffer = new byte[BUFFER_SIZE];
            int length;
            while ((length = input.read(buffer)) != -1) {
                output.write(buffer, 0, length);
            }
        } finally {
            this.closeInputStream(input);
            this.closeOutputStream(output);
        }
    }

    private void closeInputStream(InputStream input) {
        if (input != null) {
            try {
                input.close();
            } catch (IOException ignore) {
            }
        }
    }

    private void closeOutputStream(OutputStream output) {
        if (output != null) {
            try {
                output.close();
            } catch (IOException ignore) {
            }
        }
    }

    public static void main(String[] args) {
        Downloader downloader = new Downloader();
        try {
            URL source = new URL("http://www.w3schools.com/xml/note.xml");
            File destination = new File("c:/note.xml");
            downloader.downloadFile(source, destination);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
0

Dzięki, wypróbuję :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1