Also schrieb ich eine kleine Anwendung, die eine Zeichenfolge verwendet, die einen Dateipfad darstellt, so dass ich eine Datei und dann ein gepuffertes Image erstellen kann. Ich habe für dieses Beispiel irrelevant Code weggelassen:Datei kann nicht mit derselben URL und derselben Dateistruktur auf einem anderen Computer gelesen werden
public class MorphImage {
private final String URL0 = "pic1.jpg";
//....
URL url = getClass().getResource(URL0);
File file = new File(url.getPath());
BufferedImage img = ImageIO.read(file);
Meine Dateistruktur ist wie folgt:
projectName
src
package1
MorphImage.java
pic1.jpg
Auf meinem Laptop 10 Windows ausgeführt wird, das funktioniert ganz gut, aber genau das gleiche Projekt mit auf meinem Windows 8 pc, bekomme ich eine IIOException: Can't read file!
in der letzten Zeile. Beide Computer verwenden dieselbe Eclipse-Version und dieselbe JDK-Version. Ich bin mir nicht sicher, was ich hier machen soll. Ich habe viele verschiedene Dateipfade auf meinem Windows 8-Rechner ausprobiert, aber stattdessen wird nur NP geworfen, der Pfad ist also korrekt.
EDIT: Lösung unter:
URL defaultImage = MorphImage.class.getResource(URL0);
File file = new File(defaultImage.toURI());
BufferedImage img = ImageIO.read(file);
Das funktionierte tatsächlich, danke, wird die Lösung zu meinem Beitrag bearbeiten. – korv