0

画像ファイルを読み込もうとしています。

File imageCheck = new File("Users/me/Documents/workspace/ChineseChess/src/RCar.gif");
if (imageCheck.exists())
    System.out.println("Image file found!");
else
    System.out.println("Image file not found! :(");
button.setIcon(new ImageIcon("Users/me/Documents/workspace/ChineseChess/src/RCar.gif"));
  1. RCar.gif を Eclipse プロジェクトの src または bin フォルダーに配置する必要がありますか?
  2. 明示的なパスなしでどのように参照しますか? (私は mac を使用しています。 ~/RCar.gif のようなものであるべきだと思いますが、オンラインで正しい構文を見つけるのに苦労しています。

ありがとう!

4

4 に答える 4

3

アイコンが実行時に所属するクラスのリソース フォルダーにある場合は、アイコンを非常に簡単に読み込むことができます。http://docs.oracle.com/javase/7/docs/api/java/lang/Class.html#getResource%28java.lang.String%29を参照してください。

クラス内でyour.packagename.YourClassName次のように記述できます。

String folderName = YourClassName.class.getName().replace('.', '/' );
String urlString = "/"+folderName+"/RCar.gif";
URL fileUri = YourClassName.class.getResource(urlString);
button.setIcon(new ImageIcon(fileUri));

urlString は/your/packagename/YourClassName/RCar.gif. もちろん、これは実行時にアイコンがあるべき場所でもあります。

HTH

于 2013-07-01T07:12:24.603 に答える
3

私の記憶が正しければ、Eclipse ではすべてのリソースをリソース ディレクトリに配置する必要があります。これらは、エクスポート時にアプリケーションに自動的にバンドルされます。

実行時にClass#getResource("/path/to/your/resource")、パスが「リソース」フォルダーの場所である場所を使用するだけです

于 2013-07-01T06:31:21.250 に答える
1

はい...相対パスを取ります。

public static final String FILE_PATH = "src/test/resources/car.png";

于 2014-10-10T04:47:32.110 に答える