表示する画像をロードする JFrame を使用してゲームを作成していました。次に、プログラムを実行しようとしたときに、jar に画像が見つかりませんでした。では、jar 内からファイルを取得するにはどうすればよいでしょうか。それは、/img.png
またはimg.png
それとも\\img.png
ですか?Javaのパスがまだどのように機能するかわかりません。
(編集)それを理解しました。
表示する画像をロードする JFrame を使用してゲームを作成していました。次に、プログラムを実行しようとしたときに、jar に画像が見つかりませんでした。では、jar 内からファイルを取得するにはどうすればよいでしょうか。それは、/img.png
またはimg.png
それとも\\img.png
ですか?Javaのパスがまだどのように機能するかわかりません。
(編集)それを理解しました。
/img.png が正しいです。どのようにロードしようとしていますか?イメージ ファイルを取得するには、その JAR ファイルを認識しているクラスローダーを使用する必要があります。
この方法を試してください:
JARファイルがクラスパスにあると仮定して、このようなことを試してください。
public class MyClass {
public static void main(String[] args) {
InputStream is = MyClass.class.getClassLoader().getResourceAsStream("/img.png");
// read in the data stream
}
}
たとえば、これはjarファイル構造です
jarがクラスパスにあることを確認してから、次のようにコーディングします
String file01="tom.txt";
String file02="com/paic/jerry.txt";
InputStream tom=this.getClass().getClassLoader().getResourceAsStream(file01);
InputStream jerry=this.getClass().getClassLoader().getResourceAsStream(file02);