なぜ機能がjava.io.File.toURL()
は推奨されていませんか? URLオブジェクトを受け入れるToolkit.createImage()
へのURLを渡す必要があります。 Javadocは私にFile.toURI().toURL()
を使うことを勧めます。しかし:File.toURL()は推奨されていませんか?
C:\Documents and settings\Administrator\...
は次のようになります。
C:\Documents%20and%20settings\Administrator\...
明らかに無効なファイルの場所です。私はFile.toURL()がエスケープせずにURLを作成することを発見しましたが、非推奨です。それは動作しますが、私は非難された関数を使用するのが怖いです。同じことをしても非難されない方法は何ですか?
EDITは:今の私のコードは次のようになります。
spriteImage1 = tkit.createImage(new File("./images/sprite1.png").getCanonicalFile().toURL());
編集:私は私の.jarファイルの外のフォルダから画像を作成する必要があります。私は相対的な場所( "/images/sprite1.png")が必要です。 createImage(String)メソッドは、相対パスを与えるときに例外をスローします。
エスケープされたバージョンが間違っていると思うのは、まったくわかりません。確かに私はおそらく%20の代わりに+を期待していましたが、それでも動作することを願っています。 –
2番目のファイルではありません:/// C:/ Documents%20and%20settings/Administrator/...? – Powerlord
実際には2番目のバージョンでは、最初のものがうまく動作している間にcreateImage()に渡すと例外が発生します。そしてそれはファイルです:/// ... – Lucky