-JPEG oder -PNG aus Internet URL in File speichern?

zReaLy

Mitglied
Hallo,
ich weiss es gibt schon in diesen Forum ein Thread dazu da funktioniert das aber nicht wirklich,
deswegen wollte ich mal nen neuen eröffnen.

Ich wollte wissen wie man z.b. aus einem URL names "http://whatevaah.de/whatevaah.jpg" oder sowas,
das Bild in den eigenen files speichern kann...

ich hoffe ihr könnt mir ein beispiel geben :D.
 
Zuletzt bearbeitet:
der code von mir von deinem link erstellt einfach kein bild?
Java:
import java.io.BufferedInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.net.MalformedURLException;
import java.net.URL;

public class ImageDownloader {
	public static void main(String[] args) {
		try {
			saveUrl("C:/Users/User/Desktop/JPEG.jpg", "http://stockazoo.com/wp-content/uploads/2009/02/blue-chrome-g.jpg");
		} catch (MalformedURLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
public static void saveUrl(String filename, String urlString)
      throws MalformedURLException, IOException
    {
        BufferedInputStream in = null;
        FileOutputStream fout = null;
        try
        {
            in = new BufferedInputStream(new URL(urlString).openStream());
            fout = new FileOutputStream(filename);

            byte data[] = new byte[1024];
            int count;
            while ((count = in.read(data, 0, 1024)) != -1)
            {
                fout.write(data, 0, count);
            }
        }
        finally
        {
            if (in != null)
                in.close();
            if (fout != null)
                fout.close();
        }
    }
}
 
Hmm,
ich benutze Eclipse falls ich das "IDE" nicht falsch verstanden habe und
in der Console kommt nach gefühlten 3 Minuten vllt. liegt es an meinem schlechtem
Lappy,

Java:
java.net.SocketException: Connection reset
	at java.net.SocketInputStream.read(Unknown Source)
	at java.net.SocketInputStream.read(Unknown Source)
	at java.io.BufferedInputStream.fill(Unknown Source)
	at java.io.BufferedInputStream.read1(Unknown Source)
	at java.io.BufferedInputStream.read(Unknown Source)
	at sun.net.www.http.HttpClient.parseHTTPHeader(Unknown Source)
	at sun.net.www.http.HttpClient.parseHTTP(Unknown Source)
	at sun.net.www.http.HttpClient.parseHTTP(Unknown Source)
	at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
	at java.net.URL.openStream(Unknown Source)
	at ImageDownloader.saveUrl(ImageDownloader.java:26)
	at ImageDownloader.main(ImageDownloader.java:10)
 
Ja, IDE hast du richtig verstanden.

Hast du eine Firewall oder ein Antivirenprogramm? Ich würde darauf tippen, dass diese den Zugang blockieren.
 
Hi
Meiner Meinung kommt die Fehlermeldung aufgrund eines TimeOut Fehlers.
Da sie wenn die Verbindung durch die Firewall blockiert wird so aussieht
Java:
java.net.SocketException: Permission denied: connect
	at java.net.DualStackPlainSocketImpl.connect0(Native Method)
	at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:69)
	at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:345)
	at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
	at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
	at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:157)
	at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:391)
	at java.net.Socket.connect(Socket.java:581)
	at java.net.Socket.connect(Socket.java:530)
	at sun.net.NetworkClient.doConnect(NetworkClient.java:180)
	at sun.net.www.http.HttpClient.openServer(HttpClient.java:432)
	at sun.net.www.http.HttpClient.openServer(HttpClient.java:527)
	at sun.net.www.http.HttpClient.<init>(HttpClient.java:211)
	at sun.net.www.http.HttpClient.New(HttpClient.java:308)
	at sun.net.www.http.HttpClient.New(HttpClient.java:326)
	at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:1108)
	at sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1044)
	at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:941)
	at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:886)
	at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1455)
	at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1383)
	at java.net.URL.openStream(URL.java:1038)
	at copy_pic.ImageDownloader.saveUrl(ImageDownloader.java:28)
	at copy_pic.ImageDownloader.main(ImageDownloader.java:12)
Möglicherweise war der Server zu der Zeit in der du es versucht hast nicht erreichbar, probier doch zum Testen einfach mal einen anderen Server oder falls du die Möglichkeit hast lokal.

Lg hendl
 
Einfach den Url Pfad in das ändern, wobei das file:/// wichtig ist.
Java:
saveUrl("C:/Users/Admin/Desktop/JPEG.jpg", "file:///D:/Schule/29122011223.jpg");
saveUrl("C:/Users/Admin/Desktop/JPEG.jpg", "file:///<Hier einfach einen Pfad zu einem Bild einfügen>");

Lg hendl
 

Neue Beiträge

Zurück