IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Format d'échange (XML, JSON...) Java Discussion :

Problème pour créer mon fichier XML [JDOM]


Sujet :

Format d'échange (XML, JSON...) Java

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    434
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juin 2010
    Messages : 434
    Par défaut Problème pour créer mon fichier XML
    Bonjour,

    j'ai un problème pour créer mon fichier XML. Je n'ai aucun problème mais pourtant je ne le trouve pas...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
     
    public class DescMatTest {
     
    	static Element racine = new Element("MatricesTests");
    	static org.jdom.Document descMat = new Document(racine);
     
    	private MatriceTest matrices;
    	private Masques masks;
    	private List<Matrice> listMat;
     
    	public DescMatTest(List<Matrice> matrices, Masques masks){
    		this.listMat = matrices;
    		this.masks = masks;
    	}
     
    	public void createDescMat(){
     
    		Attribute path = new Attribute("CheminMatriceTest","test");
    		racine.setAttribute(path);
     
    		for(int i=0; i<listMat.size(); i++){
    			Element matrice = new Element("Matrice");
    			Attribute id = new Attribute("id",String.valueOf(i));
    			matrice.setAttribute(id);
    			Attribute masque = new Attribute("masque",listMat.get(i).getMask().getName());
    			matrice.setAttribute(masque);
    			Element nomMat = new Element("NomMatrice");
    			nomMat.addContent(listMat.get(i).getName());
    			matrice.addContent(nomMat);
    			Element onglets = new Element("ListeOnglets");
    			for(int j=0; j<listMat.get(i).getListOnglets().size(); j++){
    				onglets.addContent(listMat.get(i).getListOnglets().get(j));
    				if(j<listMat.get(i).getListOnglets().size()-1){
    					onglets.addContent(",");
    				}
    			}
    			matrice.addContent(onglets);
    			racine.addContent(matrice);
     
    		}
     
    		Element masques = new Element("Masques");
    		racine.addContent(masques);
     
    		List<Masque> listMask = masks.getListMasks();
    		for(int i=0; i<listMask.size(); i++){
    			Element masque = new Element("Masque");
    			Attribute nomMasque = new Attribute("nom",listMask.get(i).getName());
    			masque.setAttribute(nomMasque);
    			Attribute nbTab = new Attribute("nbTableau",String.valueOf(listMask.get(i).getNbTab()));
    			masque.setAttribute(nbTab);
    			Element ssi = new Element("SSI");
    			List<EquipementTab> eqpSSI = listMask.get(i).getEqps();
    			for(int j=0; j<eqpSSI.size(); j++){
    				ssi.addContent(eqpSSI.get(j).getName());
    				if(j<eqpSSI.size()-1){
    					ssi.addContent(",");
    				}
    			}
    			masque.addContent(ssi);
    			Element testType = new Element("TestType");
    			testType.addContent("{"+String.valueOf(listMask.get(i).getLTest())+
    					","+String.valueOf(listMask.get(i).getCTest())+"}");
    			masque.addContent(testType);
     
    			List<Tableau> listTab = listMask.get(i).getTab();
    			for(int j=0; j<listTab.size(); j++){
    				Element tab = new Element("Tableau");
    				Attribute tabNum = new Attribute("number",String.valueOf(listTab.get(j).getIdTab()));
    				tab.setAttribute(tabNum);
    				masque.addContent(tab);
    				Element l1 = new Element("L1");
    				l1.addContent(String.valueOf(listTab.get(j).getL1()));
    				tab.addContent(l1);
    				Element c1 = new Element("C1");
    				c1.addContent(String.valueOf(listTab.get(j).getC1()));
    				tab.addContent(c1);
    				Element l2 = new Element("L2");
    				l2.addContent(String.valueOf(listTab.get(j).getL2()));
    				tab.addContent(l2);
    				Element c2 = new Element("C2");
    				c2.addContent(String.valueOf(listTab.get(j).getC2()));
    				tab.addContent(c2);
    				Element elementsSSI = new Element("ElementsSSI");
    				tab.addContent(elementsSSI);
    				List<EquipementTab> listEqpTab = listTab.get(j).getListEqpTab();
    				for(int e=0; e<listEqpTab.size(); e++){
    					Element eqp = new Element(listEqpTab.get(e).getName());
    					eqp.addContent(listEqpTab.get(e).getPosTab());
    					elementsSSI.addContent(eqp);
    				}
    			}
    			masques.addContent(masque);
     
    		}
    		Element chaines = new Element("Chaines");
    		chaines.addContent("x");
    		racine.addContent(chaines);
     
    		affiche();
    		enregistre("descMat.xml");
     
    	}
     
    	static void affiche()
    	{
    	   try
    	   {
    	      XMLOutputter sortie = new XMLOutputter(Format.getPrettyFormat());
    	      sortie.output(descMat, System.out);
    	   }
    	   catch (java.io.IOException e){}
    	}
     
    	static void enregistre(String fichier)
    	{
    	   try
    	   {
     
    	      XMLOutputter sortie = new XMLOutputter(Format.getPrettyFormat());
    	      sortie.output(descMat, new FileOutputStream(fichier));
    	   }
    	   catch (java.io.IOException e){}
    	}
     
     
    }

    L'affichage dans la console se passe très bien mais ensuite je ne trouve pas le fichier créé. Avez vous une idée . Je vous remercie.

    Cordialement,

    Leniouns.

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    394
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 394
    Par défaut
    Bonjour,

    Déjà il ne faut pas caccher les erreurs comme tu fais, car si tu as des erreurs dans ton appli tu n'es pas au courant. Change ce code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    catch (java.io.IOException e){}
    En :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    catch (java.io.IOException e){e.printStackTrace();}
    Ton fichier devrait être créé à la racine de ton projet. Tu peux modifier ton code pour qu'il te dise où il enregistre ton fichier :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    XMLOutputter sortie = new XMLOutputter(Format.getPrettyFormat());
    File fichierSortie = new File(fichier);
    sortie.output(descMat, new FileOutputStream(fichierSortie));
    System.out.println("Le fichier a été créé ici : "+fichierSortie.getAbsolutePath());
    Romain.

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    434
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juin 2010
    Messages : 434
    Par défaut
    Merci ça marche.

    En fait ça marchait avant mais chose bizarre les fichiers sont créés dans C:\eclipse et non dans le répertoire de mon projet... Est ce parce qu'il s'agit d'une application RCP ?

    De plus je viens de remarquer quelque chose. En fait si le fichier existe déjà ça le complète, du coup je me retrouve avec des doublons dans mon fichier xml.

    EDIT : C'est bon j'ai résolu mon problème

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème pour modifier mon fichier xml
    Par encoremoi21258 dans le forum C#
    Réponses: 4
    Dernier message: 11/05/2014, 20h15
  2. problème pour créer un fichier XML
    Par tipi75 dans le forum XML/XSL et SOAP
    Réponses: 3
    Dernier message: 11/09/2009, 16h18
  3. [Java] Quel solution pour créer un fichier XML dans mon cas?
    Par petozak dans le forum Format d'échange (XML, JSON...)
    Réponses: 4
    Dernier message: 23/08/2006, 12h10
  4. [C#] Problème pour lire un fichier xml
    Par LE NEINDRE dans le forum Windows Forms
    Réponses: 7
    Dernier message: 22/06/2006, 23h12
  5. problème pour parser un fichier xml avec XML::Simple
    Par black_code dans le forum Modules
    Réponses: 3
    Dernier message: 30/01/2006, 19h32

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo