ここに私のディレクトリ構造
XYZProject があります
- 建てる
- 距離
- nbproject
- ソース
私はネットビーンズに取り組んでいます。
これで、ABC.txt というファイルが
できました。これを jar ファイルにパックします。
ここで、次のことを行いました。ソース パッケージの下に Resources という名前の新しいフォルダーを作成し、その中にファイル ABC.txt を配置しました。
XYZプロジェクト
-- src
|
-- Resources
|
-- ABC.txt
ここで、ファイルの場所に関係なく、このファイルにアクセスしたいと考えています。だから私はいくつかのチュートリアルに従って、これをやった、
URL url = XYZProject.class.getClassLoader().getResource("Resources/ABC.txt");
String urlStr = urlStr.getFile().replaceAll("%20", " ");
System.out.println(urlStr);
BufferedReader reader;
try {
reader = new BufferedReader(new FileReader(urlStr)); .....
} catch (FileNotFoundException e) {...}
これは、netbeans、つまり F6 と tada WORKS を介してコードを実行しているときに機能します!!!
しかし、jar を実行しようとすると、ファイルが見つかりません。FileNotFoundException がスローされ
ます netbeans および java -jar を介して実行されている jar 内のテキスト ファイルにアクセスするにはどうすればよいですか?
また、取得した URL にスペースの代わりに %20 がある理由もわかりません。
VIA NB を実行している出力
/D:/.../.../.../.../XYZProject/build/classes/Resources/ABC.txt
VIA java -jar を実行している出力
file:/D:/.../.../.../.../XYZProject/dist/XYZProject.jar!/Resources/ABC.txt