2016-07-15 10 views
0
BufferedImage image = ImageIO.read(SpriteSheet.class.getResource(path)); 
BufferedImage image = ImageIO.read(new File(path); 

Ich habe in ein paar ähnlichen Fragen hier gesehen, bevor Sie das fragen, aber ich bin immer noch ein wenig verwirrt.neue Datei (Pfad) oder class.getResourses (Pfad)?

Ich verbrachte ein wenig Zeit damit, Java-Dokumente zu lesen, aber es machte das ganze Bild noch komplexer.

Was brauche ich zum Hochladen einer Ressource in mein Programm und was ist der Unterschied zwischen den beiden?

+0

verwenden Sie Tippfehler Fehler haben sich hier: 'ImageIO.read (neue Datei (Pfad);' –

Antwort

1

SpriteSheet.class.getResource(path) findet die Datei, die sich in Ihrem Java-Klassenpfad befindet.

new File(path) findet die Datei in eine beliebige Stelle auf dem Dateisystem

wenn Ihre Ressource in Ihrem Classpath ist class.getResource(path)

+0

AFAIR Wenn Sie 'new File (path)' verwenden, funktioniert es nur, wenn sich die Datei nicht in der JAR-Datei befindet.Wenn er also Ressourcen erhalten möchte, die sich innerhalb der Anwendung befinden, muss er 'getResource' verwenden – Clayn