Warum ist die Funktion java.io.File.toURL()
veraltet? Ich muss eine URL an Toolkit.createImage()
übergeben, die ein URL-Objekt akzeptiert. Javadoc empfiehlt mir, File.toURI().toURL()
zu verwenden. Allerdings:File.toURL() veraltet?
C:\Documents and settings\Administrator\...
wird:
C:\Documents%20and%20settings\Administrator\...
, die offensichtlich einen ungültigen Dateipfad ist. Ich habe File.toURL() gefunden, um URLs ohne das Escaping zu erstellen, jedoch ist es veraltet. Obwohl es funktioniert, habe ich Angst, veraltete Funktionen zu verwenden. Was ist eine Methode, die nicht veraltet ist und die dasselbe tut?
EDIT: Gerade jetzt mein Code wie folgt aussieht:
spriteImage1 = tkit.createImage(new File("./images/sprite1.png").getCanonicalFile().toURL());
EDIT: Ich brauche ein Bild aus einem Ordner außerhalb meiner .jar-Datei zu erstellen. Ich brauche einen relativen Speicherort ("./images/sprite1.png"). Die Methode createImage (String) löst eine Ausnahme aus, wenn ich versuche, den relativen Pfad anzugeben.
Es ist für mich überhaupt nicht offensichtlich, warum Sie denken, dass die Escape-Version falsch ist. Zugegeben, ich würde wahrscheinlich + anstelle von% 20 erwarten, aber ich würde hoffen, dass es noch funktionieren würde. –
Sollte nicht die zweite Datei sein: /// C:/Documents% 20and% 20settings/Administrator/...? – Powerlord
Tatsächlich gibt mir die zweite Version eine Ausnahme, wenn sie an createImage() übergeben wird, während die erste gut funktioniert. Und ja, es ist Datei: /// ... – Lucky