Problem mit ImageIO.Lesen

Ok, ich habe ein Bild, dass ich versuche zu Lesen. Problem ist, dass das Bild.Lesen(Datei) den Wert NULL zurück.

File file = new File("C:\\images\\image1.jpg");
if(file.exists()){
    System.out.println("Image file exists.");
    BufferedImage originalImage = ImageIO.read(file);

}

Also Bild vorhanden ist, aber ImageIO.Lesen(Datei) den Wert NULL zurück. Keine Fehler geworfen, nichts!!! Whats going on?

Dies ist, was ich bisher versucht habe:

  1. Ok, meine Umgebung ist Windows 7. Ich
    getestet mit einem dieser Bilder, die
    kommt mit Windows und seine Lage
    Lesen Sie die Bild.
  2. Die image1.jpg erstellt wurde
    ein anderes system. Jetzt wissen welche Methode
    Sie sind mit.
  3. Ich habe versucht, konvertieren Sie das Bild in
    RGB-wie hier vorgeschlagen link-text
    aber es schlägt fehl mit "Nicht eine JPEG-Datei: beginnt mit 0x4d 0x4d".
  4. Die Bild-Erweiterung ist .jpg, aber
    windows sagt seine JPEG-Typ? Diese
    verwirrend ist.

Kann jemand helfen mit diesem? Ich bin neu hier, nicht sicher, wie dieses Problem zu beheben.

Ok ich habe gerade herausgefunden, dass ImageIO.getImageReaders(stream) liefert einen leeren Iterator. Dies bedeutet, dass es nicht finden konnten, einen geeigneten reader? Wie soll ich denn das Lesen dieses Bild?

Da deine tags sind 'applet', dachte nur, ich würde erwähnen, es sei denn, Sie schreiben ein applet, welches für das laden von Bildern aus den Scheiben der end-Benutzer sind, werden Sie wahrscheinlich nach einer URL statt. Weitere Kommentare, Windows hat wahrscheinlich eine Menge "magic" gebaut für den Umgang mit ungültigen Bilder. Es könnte zahlen, um öffnen Sie die JPG in ein vertrauenswürdiges Bild-editor und speichern Sie es als eine neue Datei. Dass das problem möglicherweise beheben (vorausgesetzt, es ist ein ungültiges Bild).
Und was sind die Doppel-slashes?

InformationsquelleAutor Marquinio | 2010-10-28

Schreibe einen Kommentar