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 :

Je dois générer un fichier XML avec SAX


Sujet :

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

  1. #1
    Nouveau membre du Club
    Inscrit en
    Janvier 2007
    Messages
    40
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 40
    Points : 25
    Points
    25
    Par défaut Je dois générer un fichier XML avec SAX
    voila j'ai créé un fichier XML ensuite j'ai fait la mise en page avec XSL
    mais on me demande de générer la page XML avec sax.
    je connai pas grand chose en developpement!!
    si quelqu'un pourai m' aider ça serai super sympa !!
    merci.

  2. #2
    Membre éclairé
    Inscrit en
    Octobre 2005
    Messages
    847
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 847
    Points : 841
    Points
    841
    Par défaut
    salut et bienvenu sur le forum,

    tu peux trouver ce que tu veux ici :

    http://java.developpez.com/faq/xml/?page=sax

    si tu as un probleme reviens nous voir.

    bonne chance.
    Ce n’est pas en cassant le thermomètre que vous ferez baisser la température

  3. #3
    Nouveau membre du Club
    Inscrit en
    Janvier 2007
    Messages
    40
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 40
    Points : 25
    Points
    25
    Par défaut je doit généré un fichier XML avec SAX
    salut voila je connai rien en java ni en developpement

    J'ai pri tout ceci dans un site si ça marche j'appliquerai la meme démarche pour mes fichiers

    j'ai créé un fichier "test_sax.xml" son contenu est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <personne> 
    <nom>Dupond</nom> 
    <adresse> 
    <numero>3</numero> 
    <rue>rue de la paix</rue> 
    <ville>Paris</ville> 
    <codePostal>75001</codePostal> 
    </adresse> 
    </personne>
    j'ai testé le fichier test_sax.xml il se lance bien dans Internet Explorer.

    j'ai créé un fichier "test_sax.java" son contenu est :
    Code java : 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
    // Parse un document XML en JAVA avec l'Api SAX 
     
    //on importe les API necessaires 
    //pour l'analyse du XML 
    import org.xml.sax.*; 
    import org.xml.sax.helpers.DefaultHandler; 
    import javax.xml.parsers.SAXParserFactory; 
    import javax.xml.parsers.ParserConfigurationException; 
    import javax.xml.parsers.SAXParser; 
    //pour l'acces aux fichiers
    import java.io.*; 
     
    Public class AnalyseSAX extends DefaultHandler { 
        //methode principale 
        public static void main (String args[]) throws IOException { 
            //Si l'utilisateur a oublié de passer 
            //le nom du fichier XML en parametre => erreur 
            if (args.length != 1) { 
                System.err.println("Usage: AnalyseSAX fichierSourceXML"); 
                System.exit (1); 
            } 
            //on lance l'analyseur avec le fichier XML en parametre 
            DefaultHandler handler = new AnalyseSAX(); 
            SAXParserFactory factory = SAXParserFactory.newInstance(); 
            try { 
                SAXParser saxParser = factory.newSAXParser(); 
                saxParser.parse( new File(args[0]), handler ); 
            } catch (Throwable t) { 
                //Si on a une erreur pendant l'analyse 
                t.printStackTrace (); 
                System.exit (1); 
            } 
            System.exit (0); 
        }//fin du main 
     
        //Les methodes qui suivent sont appelées 
        //automatiquement par l'analyseur 
        //lorsqu'un événement est détecté 
        //dans le fichier XML. 
        public void error(SAXParseException e) throws SAXParseException{ 
            throw e; 
        } 
     
        public void startDocument () throws SAXException { 
            System.out.println("début du document"); 
        } 
     
        public void endDocument () throws SAXException { 
            System.out.println("fin du document"); 
        } 
     
        public void startElement (String namespaceURI,String simpleName,String qualifiedName,Attributes attrs) throws SAXException { 
            String nomElement = simpleName; 
            if (nomElement.equals("")) nomElement = qualifiedName; 
            System.out.println("startElement : "+ nomElement); 
        } 
     
        public void endElement (String namespaceURI,String simpleName,String qualifiedName) throws SAXException { 
            String nomElement = simpleName; 
            if (nomElement.equals("")){ 
                nomElement = qualifiedName; 
            } 
            System.out.println("endElement : "+ nomElement); 
        } 
     
        public void characters (char buf [], int offset, int len) 
            throws SAXException { 
            String s = new String(buf, offset,len); 
            System.out.println (s); 
        } 
     
     
    }//fin de la classe


    par contre je ne sais pas ou mettre le nom du fichier XML "test_sax.xml" pour que le fichier "test_sax.java" le prenne en compte. Peut etre a la 18eme ligne:
    "System.err.println("Usage: AnalyseSAX fichierSourceXML"); "

    là ou il y a marqué "fichierSourceXML"

    bref je savai que ça allé pas marcher mais j'ai kan même lancé le programme:

    1) je me suis mit dans le répertoire là où sont mes 2 fichiers
    2) j'ai compilé test_sax.java avec la commande :

    le message d'erreur est :
    'javac' n'est pas reconnu en tant que commande interne ou externe, un programme exécutable ou un fichier de commandes

    voila dans ce que j'ai raconté là, j'ai dù me faire passer pour un débile mais c'est vrai je connai rien en developpement

    merci!!

  4. #4
    Membre confirmé Avatar de schniouf
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2003
    Messages
    382
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2003
    Messages : 382
    Points : 474
    Points
    474
    Par défaut
    Tout d'abord, tu ferais mieux d'apprendre les bases du développement, puis d'apprendre les bases de Java !

    • Code : Sélectionner tout - Visualiser dans une fenêtre à part
      System.err.println("Usage: AnalyseSAX fichierSourceXML");
      affiche un text dans la sortie d'erreur standard. Le texte ici te dit quoi faire si tu as passé un mauvais nombre d'arguments au programme. Les arguments, c'est que tu ajoutes à la suite du nom de ton programme quand tu l'exécutes :
      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      java MaClasse argument1 argument2 etc.
      Ca permet de donner des paramètres au programme sans modifier son code source.
      Ici, le test if (args.length != 1) permet de vérifier si le nombre d'argument est différent de 1. Si c'est le cas, on donne le message d'erreur. A mon avis, le nom de ton fichier xml doit être un argument :
      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      java AnalyseSAX test_sax.xml
    • Essaie de respecter les conventions de nommage : ta classe AnalyseSAX doit être contenue dans le fichier AnalyseSAX.java. Il y a une classe par fichier.

    • Le fait qu'il ne te trouve pas la commande javac peut venir de plusieurs choses :
      • Soit tu n'as pas installé le JDK de Java mais seulement le JRE
      • Soit tu as un problème de classpath, c'est à dire que ton système ne sait pas où trouver le programme javac.exe (si tu est sous windows). Tu peux résoudre ce problème en modifiant la variable path de ton système, ou en faisant
        Code : Sélectionner tout - Visualiser dans une fenêtre à part
        javac -cp cheminDuJDK/bin AnalyseSAX.java
        L'executable javac est contenu dans le répertoire bin du répertoire d'installation du JDK.

Discussions similaires

  1. Réponses: 1
    Dernier message: 08/06/2008, 19h05
  2. [XSLT] Générer des fichiers XML avec PHP
    Par oneTime dans le forum Bibliothèques et frameworks
    Réponses: 4
    Dernier message: 28/04/2008, 21h27
  3. [SAX] Génére un fichier XML avec SAX à partir d'un tableau de données
    Par flethiel dans le forum Format d'échange (XML, JSON...)
    Réponses: 7
    Dernier message: 25/09/2007, 12h12
  4. [XML] générer un fichier xml avec du php : problème de boucle
    Par freija dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 19/02/2007, 18h25

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