Leggere file da url con Java

Mattepuffo's logo
Leggere file da url con Java

Leggere file da url con Java

Vediamo un semplice codice che riesce a leggere il contenuto di file usando un url usando Java.

Non so che utilità possa avere e quando usarlo.

Però magari qualche idea può sempre venire.

Io l'ho usato dentro un programmino per riempire una JTextArea ad esempio...

Il codice è poco e facile; in tutto abbiamo una classe e due metodi (incluso il main).

import java.io.*;


import java.net.URL;

public class URLReader {

    private String url;

    public URLReader(String url) {
        this.url = url;
    }

    public String read() throws Exception {
        StringBuilder sb = new StringBuilder();
        URL u = new URL(this.url);
        InputStreamReader in = new InputStreamReader(u.openStream());
        BufferedReader buf = new BufferedReader(in);
        String line;
        while ((line = buf.readLine()) != null) {
            sb.append(line);
        }
        return sb.toString();
    }

    public static void main(String[] args) throws Exception {
        URLReader rd = new URLReader("http://192.168.1.130");
        System.out.println(rd.read());
    }
}

Il costruttore della classe URLReader accetta uno String come parametro, e corrisponde all'url da leggere.

Il metodo read è quello che fa il tutto.

Usiamo StringBuilder per costruire la stringa.

Poi apriamo uno stream in input con InputStreamReader prendendo lo stream dall'oggetto URL.

Dentro al ciclo while leggiamo il contenuto con un BufferedReader, e appendiamo il tutto allo StringBuilder.

Nel metodo main richiamiamo istanziamo un oggetto di classe URLReader passandogli l'url e stampiamo il risultato.

Io ho interrogato il web server che sta in un pc della rete, e questo è il risultato:


Index of /

[ICO] Name Last modified Size Description

Condividi

3 Commenti

  • Lorenzo

    Grazie, mi è stato molto utile

    07/10/2017
  • fermat

    ciao!<br />non ho mai affrontato questo problema direttamente.<br />forse potresti usare ajax.<br />qui ci sono alcuni esempi di base: http://stackoverflow.com/questions/247483/http-get-request-in-javascript

    03/04/2013
  • giuseppe cascavilla

    Ciao, io avrei bisogno di leggere un URL ma in Javascript, fare il download (semmai della pagina), e poi leggere una stringa di codice (che è univoca). Come potrei fare tutto ciò in Javascript ? Che è decisamente di verso da Java :) .... Grazie, saluti Giuseppe.

    03/04/2013

Commentami!