"Hei, Amigo!"

"Hei, Ellie!"

"Du virker veldig fornøyd med deg selv i dag."

"Heh, Bilaabo ble syk."

"Så han kunne ikke forklare en haug med interessante, nyttige og nødvendige ting for deg. Det er på tide å ta på deg store robotbuksene."

"Uh-he. Jeg lover å finne ut av alt selv. Bilaabo ga meg en link."

"Ok, bra. Da skal jeg fortelle deg noe interessant."

"Nemlig hvordan du laster ned videoer fra Internett."

"For å jobbe med Internett har Java en spesiell klasse kalt URL. Slik bruker du denne klassen til å laste ned en fil:"

1) Først må du spesifisere riktig URL til serveren du trenger.

2) Deretter må du bruke URL-en for å etablere en forbindelse med serveren.

3) Send deretter brødteksten til forespørselen hvis det er en POST-forespørsel. Eller du kan hoppe over dette trinnet hvis det er en GET-forespørsel.

4) Les til slutt serversvaret.

"Slik ser en enkel filnedlasting ut:"

Eksempel
URL url = new URL("https://www.google.com.ua/images/srpr/logo11w.png");
URLConnection connection = url.openConnection(); // Establish a connection

// Get an OutputStream in order to write the request to it
OutputStream outputStream = connection.getOutputStream();
outputStream.write(1);
outputStream.flush();

// Get an InputStream in order to read the response from it
InputStream inputStream = connection.getInputStream();
Files.copy(inputStream, new File("c:/google.png").toPath());

"Først etablerer vi en forbindelse med serveren ved å få et URLConnection- objekt."

"Så får vi OutputStream som forespørselen må skrives til. Og vi skriver noe til den."

"Deretter får vi InputStream-objektet som representerer responsen, som vi leser selve responsen fra. Vi bruker Files.copy-metoden for å lagre de sendte dataene til filen «c:/google.png»."

"Ja, jeg forstår. Hva er «skriv(1)»?"

"Vel, jeg tok med det for å vise deg at du kan skrive noe der. Du trenger faktisk ikke å skrive noe i forespørselen for å laste ned filen. Du kan bare umiddelbart få en InputStream og begynne å lese svaret derfra. URL-objektet har til og med en openStream()-metode som umiddelbart returnerer et InputStream-objekt. Men dette er bare egnet for GET-forespørsler. For eksempel:"

Eksempel
URL url = new URL("https://www.google.com.ua/images/srpr/logo11w.png");
InputStream inputStream = url.openStream();
Files.copy(inputStream, new File("c:/google.png").toPath());

"Så interessant! Jeg trodde ikke det var så enkelt å laste ned en fil."

"Vel, ingen vanligvis gjør det slik, siden filer kan være store og ta veldig lang tid å laste ned."

"Det er ganske mange rammeverk som i stor grad forenkler arbeidet med filer, men jeg er ikke klar til å snakke om dem nå. En annen gang."