begin process at 2012 02 11 11:48:24
  Trouver un code source :
 
dans
 
Accueil > Forum > 

JAVA / J2EE / J2ME

 > 

Divers

 > 

Général

 > 

parseur xml


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

parseur xml

lundi 29 juin 2009 à 10:18:00 | parseur xml

neg03

Bonjour, J'ai réalisé un parseur XML qui récupère certaines informations entre des balises et les insére dans une base de données. Mon problème est que je dois récupérer dans une balise du code html que je souhaite insérer dans ma base de données tels quel c'est à dire avec les balises html. Le souci est que j'insère bien les données mais dans ma base de données il supprime les balises html par conséquent quand je souhaite afficher les données elles sont écrites les unes à la suite des autres sans la disposition pré établi avec les balises html. public void startElement(String nameSpaceURI, String localName, String rawName, Attributes attributs) throws SAXException { if(localName.equals("document")) { oitem=true; } if(oitem==true) { if(localName.equals("titre")) { otitre=true; } if(localName.equals("htmlpage")) { odescription=true; } } } Merci d'avance
lundi 29 juin 2009 à 10:20:00 | Re : parseur xml

neg03

Désolé mon premier message est illisible. Bonjour, J'ai réalisé un parseur XML qui récupère certaines informations entre des balises et les insére dans une base de données. Mon problème est que je dois récupérer dans une balise du code html que je souhaite insérer dans ma base de données tels quel c'est à dire avec les balises html. Le souci est que j'insère bien les données mais dans ma base de données il supprime les balises html par conséquent quand je souhaite afficher les données elles sont écrites les unes à la suite des autres sans la disposition pré établi avec les balises html.
lundi 29 juin 2009 à 10:25:13 | Re : parseur xml

DARKSIDIOUS

Membre Club Administrateur CodeS-SourceS
Salut,

Ton message nous montre en rien comment tu récupères les valeurs de la balise en question et comment tu l'insère dans la base de données : tu ne fais que passer des variables à true...

Je ne vois pas pourquoi la base de données ne stockerai pas les balises HTML : es-tu sûr d'insérer les données avec les balises HTML ? Les balises html posent problème dans un fichier xml car elles contiennent des caractères réservées, tels que "<", ">", etc. vérifie que tu récupères bien les bonnes données avant de les insérer en base, je pense que ton problème est là !
lundi 29 juin 2009 à 10:38:39 | Re : parseur xml

neg03

Merci d'avoir répondu, voila une partie de mon code ou j'insère mes valeurs :

<code>
        public void startElement(String nameSpaceURI, String localName, String rawName, Attributes attributs) throws SAXException {
                if(localName.equals("document"))
                {
                oitem=true;
                }
                if(oitem==true)
                {
                if(localName.equals("titre"))
                {
                otitre=true;
                }
                if(localName.equals("htmlpage"))
                {
                odescription=true;
                }
                        
         }
     }

         public void endElement(String nameSpaceURI, String localName, String rawName) throws SAXException {
        
               if(localName.equals("document"))
                {
       try {
String query = "select * from jos_content";
rs = s.executeQuery(query);
while (rs.next()) {
if(rs.getString("title").equals(titre) && rs.getString("introtext").equals(description))
{
bool=false;
System.out.println("pas d'insertion pour " + titre);
break;
}
else
{
bool=true;
}
}
} catch (SQLException e) {
e.printStackTrace();
}

                 if(bool)
                 {
                
                 try {
        //Récupère tous les flux
         PreparedStatement ps = c.prepareStatement("insert into jos_content (`title`,`introtext`) values(?,?)");

        //Insert les différents champs dans la requête
         ps.setObject(1,titre );
         ps.setObject(2,description );
         ps.executeUpdate();
        } catch (SQLException ex) {
        System.out.println("probleme SQL pour inserer la news"+ex);
                                    }
         catch (Exception e) {
        System.out.println("proble pour inserer la news"+e);
                                    }
                 System.out.println("insertion ok pour " + titre);
                 }
                 //Remet les variables à null pour l'article suivant
            titre="";
            description="";
          
                }
                if(localName.equals("document"))
                {
                oitem=false;
                }
                if(localName.equals("titre"))
                {
                otitre=false;
                }
                if(localName.equals("htmlpage"))
                {
                odescription=false;
                }                          
        }
</code>

Je récupère bien les bonnes données avant de les insérer en base mais mon souci et que j'insère les données sans les balises html.
lundi 29 juin 2009 à 11:16:41 | Re : parseur xml

neg03

En faite mon problème vient d'ici :
<code>
/**
         * Evenement recu a chaque fois que l'analyseur rencontre des caracteres (entre
         * deux balises).
         * @param ch les caracteres proprement dits.
         * @param start le rang du premier caractere a traiter effectivement.
         * @param end le rang du dernier caractere a traiter effectivement
         * @see org.xml.sax.ContentHandler#characters(char[], int, int)
         */
  public void characters(char[] ch, int start, int end) throws SAXException {
                

                //Si on est dans un article
                if(oitem==true )
                   {
                if(otitre==true)
                   {
                 String data1=new String(ch, start, end);
                 titre+=data1;
                   }
                if(odescription==true)
                   {
                 String data2=new String(ch, start, end);
                 description+=data2;
                   }
             }
        }
</code>

Pour insérer le titre il n'y a aucun problème mais pour la description qui contient les balises html ça ne fonctionne pas car ça ne m'affiche que le contenu entre les balises html.
mardi 30 juin 2009 à 07:19:27 | Re : parseur xml

DARKSIDIOUS

Membre Club Administrateur CodeS-SourceS
Oui c'est bien ce que je te dit depuis 2-3 posts : le parseur XML ignore les balises HTML apparement, il faut que tu corrige le contenu de ton fichier xml qui ne doit pas être correct, et encodé les caractères interdits tels que "<", ">", "=", """, etc.
mardi 30 juin 2009 à 09:11:47 | Re : parseur xml

neg03

Ok merci bien je vais regarder ça.


Cette discussion est classée dans : données, html, balises, if, localname


Répondre à ce message

Sujets en rapport avec ce message

Passage données HTML-Applet-HTML sous MAC OS [ par siamine ] Bonjour, Mon pb est le suivant : je cherche à récupérer dans mon applet les données d'un textarea (de la même page HML)puis à la fin de mon applet, me Parser du HTML [ par JALEO WAHRANI ] Bonjour à tous,j'utilise actuellement htmlparser pour parser du HTML (logique !). Cependant je bute sur un problème car je voudrais ouvrir un fichier, Utiliser des balises HTML [ par lafolle24320 ] Bonjour, Pour écrire dans des text field avec setText j'utilise et je suis obligée d'utiliser des balises HTML Or lorsque je veut appliquée la méthode Pb d'interprétation des balises html lors d'un include d'une page dans une autre (JSF) [ par gaet_045 ] Bonjour à tous, je rencontre des problèmes d'interprétation des balises html lorsque je réalise un include d'une page dans une autre. En fait les bali extraction des données d'un fichier HTML et les remettre dans une base de données [ par kawtarinpt ] bonjour j'ai besoin dans mon application d'extraire des données d'un fichier HTML et les remettre dans une base de données Oracle. Alors, j'aimerais b convertir les tableaux html en XML [ par asle ] salut, j'ai le code suivant qui permet d'extraire un tableau html et le transformer en xml: import org.htmlparser.*; import org.htmlparser.util.*; i afficher les données de deux bases dans la meme fenetre [ par oussamatel ] salut à tous  j'ai un petit problème qui semble facile à résoudre mais dommage j'ai pas trouvé de solution. alors pour commencer j'ai deux bases de d Comment générer du html a partir d'un fichier xml et du java [ par shefiu ] Slt a tous !J'aimerais savoir comment je pourrais générer du html a partir d'un fichier xml et d'un code source java. Je sais qu'il est possible de fa problème d'accès à l'url [ par tounsimaroua1 ] salut à tous, je suis entrain de réaliser une application java necessitant la parcours d'un fichier html. j'ai trouvé un probléme d'accès à l'url j'ai ActiveXObject [ par asmaa17 ] Bonjour,j'ai besoin de vos aides.j'ai deux fonction javascript,une pour enregistrer des données sur une base l'autre pour afficher les donnée de la ba


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 7,925 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales