Problème appel fichier XML

Milouza22 Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   -  
tksteph Messages postés 204 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour, j'ai une jList contenant la liste des fichiers XML affiché de la base des données et j'ai besoin de passer le nom choisi de la jList pour le passer ne paramètre et l'utiliser, tout est bom je saisie le nom et je le passe mais j'ai ce problème que je n'arrive pas à résoudre :

voici mon code coté parcours fichier XML:
public class ReadXMLFile {
static Structure struct = new Structure();
static SuppStruct supp = new SuppStruct();
public static void donnees (String nom){


final DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
try {
final DocumentBuilder builder = factory.newDocumentBuilder();
final Document document= builder.parse(new File(nom));


le code pour récupérer le nom (qui me donne le bon résultat :


sel = (String) AfficherXML.jList1.getSelectedValue() ;
String nm = "XmlFiles\\"+sel;
System.out.println(nm);
ReadXMLFile.donnees(nm);


d'après le message d'erreur il me semble que c'est un problème de "/" et "\" mais je n'arrive pas à la changer :/
Merci pour votre aide que j'en ai vraiment besoin :)
A voir également:

3 réponses

tksteph Messages postés 204 Date d'inscription   Statut Membre Dernière intervention   25
 
Peux-tu récupérer ton url plustot comme ceci: ?
nm = new File("XmlFiles\\"+sel).getAbsolutePath();

Si ça plante alors vérifies bien que le chemin existe (surtout la partie avant le XmlFiles\.... ) et que la syntaxe est bonne.
Et aussi ton classpath!
0
Milouza22 Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
 
j'ai le bon chemin (si je met le meme chemin ici au lieu du parametre nm : final Document document= builder.parse(new File(nom));
ça marche à condition que je change les "\" par des "/" mais meme si je change dans la saisie String nm = "XmlFiles/"+sel;
cela ne change rien et j'ai la meme erreur
0
tksteph Messages postés 204 Date d'inscription   Statut Membre Dernière intervention   25
 
Désolé de revenir si tardivement,
Toutefois si votre problème n'est toujours pas résolut à ce jour,
Alors utiliser la méthode replace pour remplacer tous les "\" par "/" .

nm = nm.replace("\\", "/");
0