Rumah  >  Artikel  >  Java  >  Bagaimana untuk Mengelakkan NullPointerException apabila Mendapatkan Imej daripada Folder Sumber dalam NetBeans?

Bagaimana untuk Mengelakkan NullPointerException apabila Mendapatkan Imej daripada Folder Sumber dalam NetBeans?

Patricia Arquette
Patricia Arquetteasal
2024-11-07 22:35:03434semak imbas

How to Avoid NullPointerException when Retrieving Images from Resources Folder in NetBeans?

Mendapatkan Imej daripada Folder Sumber dalam NetBeans

Pernyataan Masalah

Dalam projek Java dalam NetBeans 7.0, mendapatkan semula imej daripada folder "sumber" menggunakan kod berikut menghasilkan a NullPointerException:

ImageIcon fillingIcon = new ImageIcon(getClass().getClassLoader().getResource("filling.jpg"));

Walaupun mengesahkan kehadiran imej dalam folder sumber, pendekatan ini gagal.

Penyelesaian

1. Struktur Folder:

  • Asingkan folder sumber daripada folder src untuk mengelakkan pemadaman semasa binaan:

    • Buat folder sumber dalam folder src.

2. getResource(Path):

  • Di Java, sumber diakses relatif kepada punca classpath, yang dalam kes ini ialah folder "classes" dalam folder binaan:

    • Gunakan "/" di hadapan untuk menunjukkan laluan sumber mutlak (cth., /resources/images/logo.png).
    • Tinggalkan "/" terkemuka untuk sumber yang terkandung dalam subfolder (cth., getClass().getResourceAsStream("/resources/allwise.ini")).

3. Contoh:

  • Untuk memuatkan imej, gantikan kod lama dengan:
ImageIcon fillingIcon = new ImageIcon(getClass().getClassLoader().getResource("/resources/images/filling.jpg"));
  • Untuk fail sumber yang disimpan dalam subfolder dalam sumber , gunakan:
if (common.readFile(getClass().getResourceAsStream("/resources/allwise.ini"), buf).equals("OK")) {

4. Binaan Folder:

  • Folder binaan mengandungi salinan folder sumber. Oleh itu, laluan sumber yang disediakan harus berfungsi apabila terus menjalankan fail JAR dari folder dist.

5. Penyelesaian masalah:

  • Pastikan imej wujud dalam folder sumber.
  • Semak dua kali ejaan nama fail imej.
  • Sahkan bahawa anda mengimport kelas yang diperlukan, seperti java.awt.Image dan java.awt.ImageIcon.

Atas ialah kandungan terperinci Bagaimana untuk Mengelakkan NullPointerException apabila Mendapatkan Imej daripada Folder Sumber dalam NetBeans?. 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