Bilder übergeben

ErfinderLabyrinth

Bekanntes Mitglied
Hi,
ich möchte eine Website programmieren.
Hierbei möchte
Java:
writer.println("<img src=\"images\\Logo.png\" alt=\"LOGO\" height=\"50\"/>");

Java:
if (path.equals("images/Logo.png")) {
    System.out.println("Logo");
    ...
}

Bei ... möchte ich das Bild bei "src\\images\\Logo.png" übergeben
P.S. in der Variable pfad steht der Verzeichnispfad der URL
 
Beste Antwort
Ich habe die Lösung gefunden:
Java:
if (path.equals("images/Logo.png")) {
    System.out.println("Logo");
    writer.print("HTTP/1.0 " + "handy" + " " + "images" + "\r\n");
    writer.print("Content-type: file/html\r\n\r\n");
    writer.flush();
    File file = new File("src\\images\\Logo.png");
    FileInputStream fis = new FileInputStream(file);
    BufferedInputStream bis = new BufferedInputStream(fis);
    int read;
    byte[] buffer2 = new byte[1024];
    while ((read = bis.read(buffer2, 0, 1024)) >= 0) {
        bwriter.write(buffer2, 0, read);
    }
    bwriter.flush();
    fis.close();
    bis.close();
}

Erklärung:
Zeile 1: Ich überprüfe, ob der jeweilige Pfad aufgerufen wurde
(Zeile 2 kann man ignorieren)
Zeile 3 - 5: Ich sage...

ErfinderLabyrinth

Bekanntes Mitglied
Ich möchte wenn die bedingung "path.equals("images/Logo.png")" true ist, dass ein Bild übergeben wird, dass z.B. Chrome bei <img src="images/Logo.png" alt="LOGO" height="50"/> das Bild anzeigen kann
 

httpdigest

Top Contributor
Das ist kein Programmier-Problem, sondern eine seeeehr grob und fachlich formulierte Anforderung.
Das ist in etwa so, als hättest du gesagst: "Ich will ein Spiel entwickeln und will, dass immer, wenn der Benutzer die linke Maustaste drückt, dass er mit seiner aktuell gewählten Waffe schießt."
Ja, toll.
Es gibt eine Gazillion mögliche Wege, das umzusetzen.
Genauso wie bei dir.
Welchen Ansatz wählst du denn für den Server? Einfach nur Servlets? Oder ein Web-Framework?
 

Oneixee5

Top Contributor
Verstehe ich das richtig, du möchtset ein Bild downloaden? Wenn das so ist, dann erzeuge einen Ordner images und speichere dein Bild dort. Der Ordner images muss natürlich im Zugriff deines Webservers liegen. Wo das genau ist hängt von deinem Server ab. Ein gesondertes Programm benötigst du dazu nicht.
 

ErfinderLabyrinth

Bekanntes Mitglied
Verstehe ich das richtig, du möchtset ein Bild downloaden? Wenn das so ist, dann erzeuge einen Ordner images und speichere dein Bild dort. Der Ordner images muss natürlich im Zugriff deines Webservers liegen. Wo das genau ist hängt von deinem Server ab. Ein gesondertes Programm benötigst du dazu nicht.
nicht downloaden, sondern nur übergeben, das dieses Bild auf der Website angezeigt wird
 

Oneixee5

Top Contributor
Java:
<img src=.../>
Das Attribut src bezeichnet eine URL wo das Bild zu finden ist. Der Browser lädt es von da runter (Download) und zeigt es dann an. Die URL kann auch relativ zur URL der Webseite sein. Wenn die HTML-Seite einfach nur in deinem Dateisystem liegt, dann reicht die Angabe des Ordners und des Dateinamens.
Images are not technically inserted into a web page; images are linked to web pages. The <img> tag creates a holding space for the referenced image.
 

ErfinderLabyrinth

Bekanntes Mitglied
Ich habe die Lösung gefunden:
Java:
if (path.equals("images/Logo.png")) {
    System.out.println("Logo");
    writer.print("HTTP/1.0 " + "handy" + " " + "images" + "\r\n");
    writer.print("Content-type: file/html\r\n\r\n");
    writer.flush();
    File file = new File("src\\images\\Logo.png");
    FileInputStream fis = new FileInputStream(file);
    BufferedInputStream bis = new BufferedInputStream(fis);
    int read;
    byte[] buffer2 = new byte[1024];
    while ((read = bis.read(buffer2, 0, 1024)) >= 0) {
        bwriter.write(buffer2, 0, read);
    }
    bwriter.flush();
    fis.close();
    bis.close();
}

Erklärung:
Zeile 1: Ich überprüfe, ob der jeweilige Pfad aufgerufen wurde
(Zeile 2 kann man ignorieren)
Zeile 3 - 5: Ich sage dem Browser, dass dies eine Datei zum herunterladen ist
Zeile 6 - 8: Ich öffne die Datei, die der Browser herunterladen soll
Zeile 9 - 13: Ich sende die Datei zum Browser
Zeile 14 - 16: Ich aktualisiere und schließe die Streams (Alle Streams schließen, die ihr nicht mehr braucht!)
 
Beste Antwort

Oneixee5

Top Contributor
Folgende Kritik:
Im Fehlerfall wird kein Stream geschlossen. Dafür gibt es try-with-ressources.
"Content-type: file/html\r\n\r\n" - sowas gibt es gar nicht.
"HTTP/1.0 " + "handy" + " " + "images" + "\r\n" - das ist sehr ungewöhnlich!
Warum programmierst du den Download selbst? Entwickelst du einen eigenen Webserver?
 
M

Mart

Gast
wenn du selber eine Lib schreibst musst du sehr aufpassen auf Fehler und Fehlerbehandlung... falls ich wieder über laravel pulvern kann da gibts die Fehlermeldung "laravel doesnt know what happen, probably its the php.ini file" ... ja wow wat soll ich damit

also sehr darauf achten dass so wenig fehlerchen und unerwartetes verhalten ( in diesem fall ist es unerwartet dass bei einem fehler der stream weiter läuft ) passiert wei nur irgendst möglich
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Socket Bilder über Socket Senden Netzwerkprogrammierung 0
B Socket Bilder verschicken via Sockets. Heap-Problem. Netzwerkprogrammierung 2
B SocketChannel ByteBuffer Bilder verschicken Netzwerkprogrammierung 17
M Socket Bilder senden Netzwerkprogrammierung 1
S Bilder durch's Netzwerk usw ... Netzwerkprogrammierung 10
R Webservice und Bilder Netzwerkprogrammierung 29
TheJavaKid Bilder mit nem ObjectStream übertragen Netzwerkprogrammierung 8
F Bilder aus Internet downloaden Netzwerkprogrammierung 12
S Socket Bilder übertragen Netzwerkprogrammierung 7
M Socket Bilder über das Netzwerk übertragen Netzwerkprogrammierung 4
G Frage zu Servlets und deren Objekte + Bilder in Servlets anzeigen? Netzwerkprogrammierung 11
Benji0815 Bilder oder PDF downloaden Netzwerkprogrammierung 11
H Bilder mit HttpClient hochladen Netzwerkprogrammierung 3
A html - E-mail - Bilder Netzwerkprogrammierung 4
A [URLConnection] Bilder hochladen - aber anders! Netzwerkprogrammierung 4
Lazybone Bilder über Socket Netzwerkprogrammierung 4
P Bilder: FTP-Upload funktioniert nicht richtig Netzwerkprogrammierung 2
E Socket Werte mit DataInput- und Output- Stream übergeben Netzwerkprogrammierung 1
E Socket Parameter über Sockets übergeben und auslesen ! Netzwerkprogrammierung 5
B Daten an Javaprogramm per URI Aufruf übergeben Netzwerkprogrammierung 7
M Java Eingabe auf FTP Server übergeben Netzwerkprogrammierung 4
L HTTP Daten an Server übergeben Netzwerkprogrammierung 2
B Eigene Objekte per RMI übergeben Netzwerkprogrammierung 2
X Über eine Socket-Verbindung Arrays übergeben Netzwerkprogrammierung 5
M String an PHP Script aus Java übergeben Netzwerkprogrammierung 12
L Sockets übergeben Netzwerkprogrammierung 4
O Methoden vom Server zu Client übergeben Netzwerkprogrammierung 2
H Objekt von JSP an Servlet übergeben Netzwerkprogrammierung 4
T rmi ssl zu große Objekte übergeben -> Exception Netzwerkprogrammierung 10
P Buchstaben übergeben Netzwerkprogrammierung 12
C Webservice, ArrayList übergeben Netzwerkprogrammierung 3
A Streams per RMI übergeben Netzwerkprogrammierung 6
D HTTP Request erstellen (Form Name übergeben!) Netzwerkprogrammierung 3
D wie kann ich rmic ein .jar file übergeben? Netzwerkprogrammierung 3
E In Webseite einloggen/ GET, POST an PHP-Script übergeben Netzwerkprogrammierung 2
A RMI wie kann ich objekte übergeben? Netzwerkprogrammierung 5
M IP Adressen auslesen und in Windows/Linux übergeben Netzwerkprogrammierung 5

Ähnliche Java Themen

Neue Themen


Oben