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 en fichier XML


Sujet :

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

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    120
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 120
    Par défaut Problème en fichier XML
    Bonjour à tous,

    j'ai fait un programme qui a pour sortie un fichier XML bon il s'exécute
    et tout va bien mais le problème lorsque j'ouvre le fichier il m'affiche
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    La page XML ne peut pas être affichée 
    Impossible d'afficher l'entrée XML en utilisant la feuille de style . Corrigez l'erreur, puis cliquez sur le bouton Actualiser ou réessayez ultérieurement. 
     
     
    --------------------------------------------------------------------------------
     
    Le document XML doit contenir un élément de niveau supérieur. Erreur de traitement de la ressource file:///C:/Documents and...
    Donc j'ai exécuté ce code à côté car j'ai cru que le problème est dans mon code
    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
     
    public class Main {
     
        /**
         * @param args the command line arguments
         */
        public static void main(String[] args) throws IOException {
            // TODO code application logic here
             FileWriter writer = new FileWriter("C:\\Documents and Settings\\Administrateur\\Bureau\\fiche.xml");
               //writer.write(xmlOutput, 0, xmlOutput.length());
                writer.write( "" );
                writer.flush();
                writer.close();
        }
     
    }
    et toujours le même problème.
    S'il vous plaît aidez moi j'ai pas compris où le problème
    Cordialement

  2. #2
    Membre éclairé Avatar de Balbuzard
    Profil pro
    Inscrit en
    Août 2008
    Messages
    381
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 381
    Par défaut
    Bizzare, j'ai exécuté ton code et il marche chez moi...
    Est-ce que tu utilises ce code pour créer un fichier, ou juste pour en éditer un? Il ne peut pas en créer, juste éditer. Ensuite, tu ne gères pas l'exception IOException, je pense pas que le soucis vienne de là, mais personnellement, j'aurais plutôt tendence à mettre les fonctions pouvant lever cette exception dans un bloc try/catch, comme ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    public class Rien {
        public static void main(String[] args){
        	try{
        		FileWriter writer = new FileWriter("/home/Balbuzard/Bureau/rien");
        		//writer.write(xmlOutput, 0, xmlOutput.length());
        		writer.write("ededed");
        		writer.flush();
        		writer.close();
        	}catch(IOException ioe) {ioe.printStackTrace();}
        }
    }
    (J'ai renommé ta classe, changé les chemins, je suis sous Linux)
    Comme ça, tu as un retour de l'erreur qui sera printée dans la sortie standard de java. Dis nous quelle erreur apparait alors, si elle apparait.

  3. #3
    Membre émérite
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    764
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 764
    Par défaut
    Citation Envoyé par soumti84 Voir le message
    lorsque j'ouvre le fichier il m'affiche
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    La page XML ne peut pas être affichée 
    Impossible d'afficher l'entrée XML en utilisant la feuille de style . Corrigez l'erreur, puis cliquez sur le bouton Actualiser ou réessayez ultérieurement. 
    Le document XML doit contenir un élément de niveau supérieur.
    Donc j'ai exécuté ce code à côté car j'ai cru que le problème est dans mon code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    [...]
    FileWriter writer = new FileWriter("C:\\Documents and Settings\\Administrateur\\Bureau\\fiche.xml");
    writer.write( "" );
    writer.flush();
    writer.close();
    [...]
    Tu n'écris rien dans ton fichier.
    Donc ton fichier est vide.
    Donc ce n'est pas un fichier XML valide puisqu'un XML doit toujours avoir au moins une racine !
    CQFD.

    Essaie :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    [...]
    FileWriter writer = new FileWriter("C:\\Documents and Settings\\Administrateur\\Bureau\\fiche.xml");
    writer.write( "<element_racine/>" );
    writer.flush();
    writer.close();
    [...]

  4. #4
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    120
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 120
    Par défaut
    Balbuzard: il n'y a aucune erreur affichée


    Astartee: bon ce code marche mais juste je l'ai fait comme essai
    pour cerner la faute lorsque j'ai retourné à l'autre programme en ajoutant
    cette ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    docXMLString = currDoc.toXml(annotationsToWrite);
                //String xmlOutput = DocumentStaxUtils.toXml(currDoc);
                FileWriter writer = new FileWriter("C:\\Documents and Settings\\Administrateur\\Bureau\\fichier.xml");
               //writer.write(xmlOutput, 0, xmlOutput.length());
                 writer.write( "<element_racine/>");
                writer.write( docXMLString );
                writer.flush();
                writer.close();
    il marche pas il m'affiche
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    La page XML ne peut pas être affichée 
    Impossible d'afficher l'entrée XML en utilisant la feuille de style XSL. Corrigez l'erreur, puis cliquez sur le bouton Actualiser ou réessayez ultérieurement. 
     
     
    --------------------------------------------------------------------------------
     
    Un seul élément de niveau supérieur est autorisé dans un document XML. Erreur de traitement de la ressource file:///C:/Docu...
     
    <element_racine/><Sentence  xmlns:gate="http://www.gate.ac.uk" gate:gateId="59" gate:annotMaxId="60"> ABC
    -----...

  5. #5
    Membre émérite
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    764
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 764
    Par défaut
    Hum, tu es sûr de savoir ce qu'est un document XML ?
    Lorsque j'ai écrit :
    Citation Envoyé par Astartee Voir le message
    un XML doit toujours avoir au moins une racine !
    c'était pour dire que le fichier ne pouvait pas être vide puisqu'il devait "au moins" contenir la racine.
    Mais pour être à présent plus exacte, un XML doit toujours comporter une et une seule racine.

  6. #6
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    120
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 120
    Par défaut
    oui c'est sur ça marche avec le fichier vide j'ai ajouté la racine
    mais avec l'autre code non tu vois?

  7. #7
    Membre émérite
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    764
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 764
    Par défaut
    Je parle bien de ton deuxième "problème".
    Et j'ai bien dit une et une seule racine. Pas deux.

    Là, tu as écrit mon petit élément "<element_racine/>" : à lui tout seul il constitue un document XML.
    Et ensuite tu as continué à écrire dans le fichier... là ça ne va plus ! La balise de <element_racine/> est fermée, le document est terminé, tout ce qui est écrit derrière invalide le format XML...

    Donc si maintenant tu veux écrire ton "vrai" contenu dans ton fichier au lieu de l'élément bidon "<element_racine/>", n'écris pas cet élément.

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

Discussions similaires

  1. Problème chargement fichier XML vers un DataSet
    Par verbal34 dans le forum Général Dotnet
    Réponses: 4
    Dernier message: 11/07/2010, 23h26
  2. Problème avec fichier XML
    Par Invité dans le forum Langage
    Réponses: 1
    Dernier message: 16/06/2009, 09h54
  3. Problème écriture fichier xml
    Par ludo24 dans le forum ASP
    Réponses: 23
    Dernier message: 23/06/2008, 11h48
  4. [C#] Problème chargement fichier xml dans treeview
    Par LE NEINDRE dans le forum Windows Forms
    Réponses: 4
    Dernier message: 23/06/2006, 14h10
  5. [SAX] Problème lecture fichier xml
    Par BernardT dans le forum Format d'échange (XML, JSON...)
    Réponses: 3
    Dernier message: 07/07/2005, 18h11

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