0

私は次のプロジェクトツリーを持っています:

ここに画像の説明を入力してください

次のコマンドを使用して、パス: Java GUI / src / dk / resources/290.gifの290.gifファイルにアクセスできます。

this.getClass().getResource("/dk/resources/290.gif")

しかし、次のコマンドを使用して、パス:Java GUI / resources2/290.gifの290.gifファイルにアクセスできません。

this.getClass().getResource("/resources2/290.gif")

HelloWorldFrame.javaクラスから290.gifファイルにアクセスしようとしています。パス内の290.gifファイルにアクセスしたい:Java GUI / resources2 / 290.gif

私は何が間違っているのですか?

4

3 に答える 3

4

Eclipseでsrcresources2ディレクトリの両方をソースフォルダとして宣言しました。buildEclipseがアプリをビルドすると、リソースがフォルダーにコピーされます。

  • dk.resources パッケージのファイルには、/dk/resources/290.gif
  • resources2 フォルダのファイルはパッケージに含まれておらず、次の方法でアクセスできます。/290.gif

を介してファイルにアクセスできるようにする場合は、フォルダの下に/resources2/290.gif名前の付いたパッケージを作成します。resource2src

于 2012-06-20T14:05:57.517 に答える
2

フォルダーsrcとフォルダーresources2の両方がビルドパスにあるようです。試しましたthis.getClass().getResource("/290.gif")か?

于 2012-06-20T13:54:03.327 に答える
0

アーティファクトの実行時に、次の方法でリソースにアクセスできます

InputStream resource = SomeClass.class.getResourceAsStream("<file or directory name"))

また

URL resource = SomeClass.class.getResource("<file or directory name"))

SomeClass はアーティファクト内のクラスです。最初の方法では、ファイルの内容を読み取るために使用できる InputStream が返されます。2 番目の方法では、ファイルまたはディレクトリのパスを見つけたり、ディレクトリ ツリーに沿って移動したりするために使用できる URL が返されます。

于 2012-06-20T13:58:03.577 に答える