Rumah  >  Artikel  >  Java  >  Bagaimana untuk Memuatkan Sumber dengan Betul dari Fail Jar?

Bagaimana untuk Memuatkan Sumber dengan Betul dari Fail Jar?

Patricia Arquette
Patricia Arquetteasal
2024-11-06 01:14:02145semak imbas

How to Load Resources Correctly from a Jar File?

Sumber Tidak Dimuatkan Dengan Betul dari Fail Jar

Apabila memuatkan sumber, jika aplikasi dijalankan daripada IDE, laluan ke sumber mungkin berbeza daripada apabila dijalankan daripada fail balang. Ini boleh menyebabkan masalah jika aplikasi bergantung pada laluan fail tertentu.

Salah satu cara untuk menyelesaikan masalah ini ialah menggunakan getResourceAsStream dan bukannya getResource. getResourceAsStream mengembalikan InputStream, yang boleh digunakan untuk membaca data sumber tanpa perlu berurusan dengan laluan fail.

Pilihan lain ialah mengekstrak sumber ke fail sementara sebelum menggunakannya. Ini boleh dilakukan menggunakan kaedah Files.copy.

Walau bagaimanapun, adalah penting untuk ambil perhatian bahawa sesetengah kod mungkin bergantung pada data yang berada dalam satu fail fizikal dalam sistem fail. Dalam kes ini, menggabungkan sumber dalam fail jar mungkin bukan pilihan.

Contoh Kod:

InputStream inputStream = WinProcessor.class.getResourceAsStream("repository");
BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));
String line;
while ((line = reader.readLine()) != null) {
  // Do something with the line
}
reader.close();

Atas ialah kandungan terperinci Bagaimana untuk Memuatkan Sumber dengan Betul dari Fail Jar?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn