Maison >Java >javaDidacticiel >Comment puis-je charger correctement des ressources à l'aide de la méthode getResource() de Java ?

Comment puis-je charger correctement des ressources à l'aide de la méthode getResource() de Java ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-02 20:02:20419parcourir

How Can I Correctly Load Resources Using Java's getResource() Method?

Chargement de ressources à l'aide de getResource() en Java

Lorsque vous travaillez avec des fichiers de ressources en Java, il est crucial de récupérer avec précision ces ressources à l'aide de getResource () méthode. Cependant, les développeurs rencontrent parfois des problèmes lorsqu'ils tentent d'accéder aux ressources, comme en témoigne un utilisateur demandant de l'aide pour obtenir un fichier image de ressource.

Pour résoudre le problème, examinons le code de l'utilisateur :

URL url = TestGameTable.class.getClass().getClassLoader().getResource("unibo.lsb.res/dice.jpg");

Ici, l'utilisateur tente de récupérer le fichier de ressources "dice.jpg" situé dans la structure de répertoires suivante :

unibo/
  lsb/
    res/
      dice.jpg
    test/
    ..../ /* other packages */

Cependant, le L'utilisateur signale recevoir systématiquement une erreur « fichier introuvable ».

Pour résoudre ce problème, examinons trois considérations clés :

  • Slash principal pour le chemin de classe racine : Lors de l'utilisation de getResource(), il est essentiel de préfixer le chemin avec une barre oblique "/" pour indiquer la racine du chemin de classe. Cela garantit que la ressource est recherchée à l'aide du chemin de classe au lieu du répertoire de travail actuel.
  • Des barres obliques au lieu de points dans le chemin : En Java, il est recommandé d'utiliser des barres obliques "/", même sur les systèmes Windows, car les chemins sont définis à l'aide de cette convention. Les points ne doivent pas être utilisés pour séparer les répertoires.
  • Appeler getResource() directement sur la classe : Au lieu d'utiliser getClass().getClassLoader(), il est souvent plus simple d'appeler directement getResource() sur la classe. Cela simplifie le code et garantit que la ressource est recherchée par rapport à l'emplacement de la classe.

Par conséquent, le code correct pour charger la ressource doit être :

URL url = TestGameTable.class.getResource("/unibo/lsb/res/dice.jpg");

En appliquant ces principes, l'utilisateur peut charger avec succès le fichier image de ressource.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn