Java et Intellij Newbie ici.Apologies Si cela a déjà été répondu, mais je ne peux pas sembler trouver la réponse. P>
Ma structure de projet est celle indiquée ci-dessous: P>
p>
J'essaie de déterminer comment lire le contenu du fichier StoredQueries StoredQuise.txt Highllight comme une seule chaîne. Cela doit être simple et j'ai essayé un certain nombre de méthodes impliquant GetClass, etc., mais rien n'a fonctionné jusqu'à présent. Apprécierait toute orientation, merci. P>
3 Réponses :
Vous pouvez lire le fichier en utilisant le chargeur de classe actuelle, mais avant cela, vous devez redresser un peu la structure. Lorsque vous utilisez Classloader pour lire le fichier, il apparaît par défaut dans le même paquet qu'il appartient. P>
Étape 1: Créer un nouveau package com.pe.Quiseries code>
Étape 2: Créez la classe package-info.java code> dans l'emballage ci-dessus
Étape 3: Créez de nouveaux répertoires imbriqués sous Ressources Code> comme
Ressources / COM / PE / QUERIES CODE> et déplacez le fichier dans ce répertoire.
Étape 4: Enfin, vous devriez être capable de lire le fichier comme
package-info.class.getresource ("storequeries.txt"); code> p>
getClass().getResource("/resources/etc.txt") Put the resource folder inside target
Il y a deux façons dont vous pouvez obtenir votre ressource: p>
Dans les deux sens, vous pouvez utiliser Chemins relatifs: P>
Pour votre exemple dans l'image, votre chemin serait: Votre chemin ne doit pas inclure le démarrage '/':
Ceci est dû au fait que lorsque votre système de construction (votre Maven) construira le projet, il mettra votre ressource dans la "racine" de JAR si vous le stockez dans Désolé pour mon anglais, j'espère que je vous aide à comprendre comment cela fonctionne. P>
P.s. J'ai écrit cet article, c'est en russe, mais vous pouvez le traduire par Google-transate (j'ai essayé et c'est compréhensible), il y a plus d'exemples et d'explications à l'intérieur. P>
Article sur les ressources sur russe P>
bonne chance! p> getclass (). getResource (chemin) code> construction. P>
/ code>:
"/etc.txt"
code>
Où dossier, etc.txt stocké dans le répertoire des ressources. LI>
ol>
/queries/storetraqueries.txt code> p>
.getresource (chemin) code>, comme: li>
ol>
ressources / com / pe / requêtes / etc.txt code> p>
GetClass (). GetResource ("Com / PE / Queries / Fosstxt") Code> P>
root code> du répertoire des ressources ou, si vous stockez comme
Ressources / COM / PE / QUERIES / FOSTXT CODE> Crée à l'intérieur JAR
COM / PE / QUERIES / CODE> et mettez-le à l'intérieur. P>