Dateigröße

Status
Nicht offen für weitere Antworten.
M

mr1st

Gast
Hallo,

ich lade aus dem Internet ein Bild herunter, mit BufferedImage und ImageIO. Wie komm ich an die Dateigröße von dem Bild, das ich da runterlade?

Code:
URL host = ...
String filename = ...
String hdd = ...

URL download = new URL(host,filename);
BufferedImage bimg = ImageIO.read(download);
ImageIO.write(bimg, "jpeg", new File(hdd));
bimg.flush();

MfG
 

Illuvatar

Top Contributor
Ein Bild kannst du auch ganz einfach so darstellen:
Code:
      InputStream in = url.openStream();
      Image img = javax.imageio.ImageIO.read (in);
      jlab.setIcon(new ImageIcon (img));
 

Sky

Top Contributor
Illuvatar hat gesagt.:
Ein Bild kannst du auch ganz einfach so darstellen:
Code:
      InputStream in = url.openStream();
      Image img = javax.imageio.ImageIO.read (in);
      jlab.setIcon(new ImageIcon (img));

Die Codezeile
Code:
ImageIO.write(bimg, "jpeg", new File(hdd));
ist für mich ein Zeichen, dass er das ganze auf Festplatte speichern will... ich les' da nix von anzeigen.
 
M

mr1st

Gast
Genau, ich will es auf der Festplatte speichern.
Ich habe leider kein Object vom Typ File, also kann ich auch nicht File.length anwenden.

MfG
 

Sky

Top Contributor
erst mal die Frage, wenn Du die Größe haben willst... ich hatte eben in diese Richtung gedacht:

Code:
      File file = new File(hdd);
      ImageIO.write(bimg, "jpeg", file);
      bimg.flush();
      System.out.println( file.length() );
 
M

mr1st

Gast
Oh, ja. Werd ich dann mal ausprobiern, Danke. Ich meld mich dann und berichte, ob's geklappt hat.

MfG
 
M

mr1st

Gast
Nun gibt er mir die Dateigröße aus. Leider stimmt die Dateigröße auf der Festplatte nicht mit der tatsächlich heruntergeladenen Größe überein.
Die Bilder auf der Festplatte sind größer. Erhöht ImageIO die Bildqualität (wenn auch nur theoretisch, weil praktisch bringt eh nix bringt)?

MfG
 

KSG9|sebastian

Top Contributor
wiei groß ist das bild nach dem download ? schonmal an größe der sektoren gedacht ?

Tatsächliche Größe != Belegter Platz auf HDD
 
M

mr1st

Gast
Hab jetzt mal dieses Bild runtergeladen:

Mozilla Firefox: 2.467 Bytes
Mein Java Programm: 2.196 Bytes

Jetzt ist die Datei plötzlich kleiner. Die Größe auf dem Datenträger beträgt 4096 Bytes, daran liegt's also nicht. Vertrauen tu ich aber Firefox, die werden das wohl richtig machen :)

MfG
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen


Oben