Inzwischen hab ich einigermassen drauf, aber mein erster Kontakt mit Streams und Readern führte zu einigen Wutausbrüchen.
Mithilfe der URL Klasse wollte ich ein Bild aus dem Netz auf meine Platte legen, irgendwann hat es geklappt, aber das Bild kam immer nur halb an. Darüberhinaus blieb meine Applikation hängen, wenn die angegebene URL nicht erreichbar war.
Mit Apaches HttpClient (http://jakarta.apache.org/commons/httpclient/) hab ich eine Alternative gefunden. Eine Api, mit der man einen Browser simulieren kann und natürlich auch ganz einfach Bilder auf die Festplatte bekommt:
import java.io.File; import java.io.FileOutputStream; import org.apache.commons.httpclient.HttpClient; import org.apache.commons.httpclient.methods.GetMethod; public class ImageDownload { public static void main(String[] args) { try { HttpClient client = new HttpClient(); File image = new File("test.jpg"); FileOutputStream fos = new FileOutputStream(image); GetMethod method = new GetMethod("http://www.example.org/image.jpg"); client.executeMethod(method); fos.write(method.getResponseBody()); fos.flush(); fos.close(); } catch (Exception e) { e.printStackTrace(); } } }
Quellcode herunterladen: ImageDownload.java
