Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

PARSEUR STRING/HTML HTML/STRING


Information sur la source

Catégorie :Divers Classé sous : string, html, parser Niveau : Débutant Date de création : 06/01/2007 Date de mise à jour : 29/01/2007 14:29:39 Vu / téléchargé: 7 915 / 234

Note :
Aucune note

Commentaire sur cette source (0)
Ajouter un commentaire et/ou une note

Description

Bonsoir,

Voilà ma première source sur le site...

Cette classe permet de parser une string et de retourner son équivalent mais en remplaçant les caractères spéciaux par les codes HTML
et de faire l'inverse. Je suis conscient que se n'est peut-être pas la bonne façon de faire.

Utilité:

       J'ai fais cette classe car quand j'utilise un jEditorPane avec setContentType("text/html"). Il ne m'affiche pas le texte entièrement s'il contient des caractères spéciaux.
 

Source

  • /*
  • * ParserHTML.java
  • * Created on 4 janvier 2007, 20:09
  • */
  • import java.util.*;
  • public class ParserHTML {
  • private static HashMap<String, String> parser;
  • private static boolean initialise = false;
  • private static String rdu="";
  • private static void ParserHTML(){
  • // initialisation des vecteurs...
  • parser = new HashMap<String, String>();
  • parser.put("á","á"); parser.put("â","â");
  • parser.put("æ","æ"); parser.put("à","à");
  • parser.put("å","å"); parser.put("ã","ã");
  • parser.put("ä","ä"); parser.put("ç","ç");
  • parser.put("é","é"); parser.put("ê","ê");
  • parser.put("è","è"); parser.put("ë","ë");
  • parser.put("ÿ","ÿ"); parser.put("\"",""");
  • parser.put("<","<"); parser.put(">",">");
  • parser.put("í","í"); parser.put("î","î");
  • parser.put("ì","ì"); parser.put("ï","ï");
  • parser.put("ñ","ñ"); parser.put("ó","ó");
  • parser.put("ô","ô"); parser.put("ò","ò");
  • parser.put("ø","ø"); parser.put("õ","õ");
  • parser.put("ö","ö"); parser.put("ß","ß");
  • parser.put("þ","þ"); parser.put("ú","ú");
  • parser.put("û","û"); parser.put("ù","ù");
  • parser.put("ü","ü"); parser.put("ý","ý");
  • parser.put("","?"); parser.put("¥","¥");
  • parser.put("œ","?"); parser.put("¢","¢");
  • parser.put("°","°"); parser.put("²","²");
  • parser.put("³","³"); parser.put("÷","÷");
  • parser.put("\n","<br />");
  • }
  • /**
  • * Permet de convertir une string en codant les caractere spéciaux en HTML
  • * @param src : String source.
  • * @return rdu : String converti.
  • */
  • public static String stringToHtml(String src){
  • // Si non initialiser
  • if(!initialise){
  • // j'initialise les vecteurs
  • ParserHTML();
  • initialise = true;
  • }
  • // Oncommence par le "&" sinon on se retrouve avec des "&ampaacute;" a la place de "á"
  • rdu = src.replace("&", "&amp");
  • src = rdu;
  • // je boucle sur la taiile d'un des vecteurs.
  • for(Map.Entry<String,String> entry : parser.entrySet()){
  • // je remplace le caractere par son code HTML.
  • rdu = src.replace(entry.getKey(),entry.getValue());
  • // Le rendu devient la source.
  • src = rdu;
  • }
  • return rdu;
  • }
  • /**
  • * Permet de convertir une string code HTML en String.
  • * @param src : HTML source.
  • * @return rdu : String converti.
  • */
  • public static String htmlToString(String src){
  • // Si non initialiser
  • if(!initialise){
  • // j'initialise les vecteurs
  • ParserHTML();
  • initialise = true;
  • }
  • rdu = src.replace("&amp", "&");
  • src = rdu;
  • // je boucle sur la taiile d'un des vecteurs.
  • for(Map.Entry<String,String> entry : parser.entrySet()){
  • // je remplace le caractere par son code HTML.
  • rdu = src.replace(entry.getValue(), entry.getKey());
  • // Le rendu devient la source.
  • src = rdu;
  • }
  • return rdu;
  • }
  • // Le main de test
  • public static void main(String [] args){
  • System.out.println("---test ParserHTML.htmlToString---");
  • String src = "á,â,æ,à,å,ã,ä,ç,é,ê,è,ë,í,î,ì,ï,ñ,ó,ô,ò,ø,õ,ö,ß,þ,ú,û,ù,ü,ý,ÿ,&,<,>,€,œ,¢,¥,°,²,³,÷";
  • System.out.println(src);
  • System.out.println("---test ParserHTML.stringToHtml---");
  • String test = ParserHTML.stringToHtml(src);
  • System.out.println(test);
  • System.out.println("---test ParserHTML.htmlToString---");
  • String test2 = ParserHTML.htmlToString(test);
  • System.out.println(test2+"\n");
  • System.out.println(src.equals(test2));
  • System.out.println("-------------------------------------------------------------------------------------------");
  • }
  • }
/*
 * ParserHTML.java
 * Created on 4 janvier 2007, 20:09
 */

import java.util.*;

public class ParserHTML {
    private static HashMap<String, String> parser;
    private static boolean initialise = false;
    private static String rdu="";
    
    private static void ParserHTML(){
        // initialisation des vecteurs...
        parser = new HashMap<String, String>();           
        parser.put("á","á"); parser.put("â","â");  
        parser.put("æ","æ");  parser.put("à","à"); 
        parser.put("å","å");  parser.put("ã","ã"); 
        parser.put("ä","ä");   parser.put("ç","ç"); 
        parser.put("é","é"); parser.put("ê","ê");  
        parser.put("è","è"); parser.put("ë","ë");   
        parser.put("ÿ","ÿ");   parser.put("\"",""");  
        parser.put("<","<");     parser.put(">",">");     
        parser.put("í","í"); parser.put("î","î");  
        parser.put("ì","ì"); parser.put("ï","ï");   
        parser.put("ñ","ñ"); parser.put("ó","ó"); 
        parser.put("ô","ô");  parser.put("ò","ò"); 
        parser.put("ø","ø"); parser.put("õ","õ"); 
        parser.put("ö","ö");   parser.put("ß","ß");  
        parser.put("þ","þ");  parser.put("ú","ú"); 
        parser.put("û","û");  parser.put("ù","ù"); 
        parser.put("ü","ü");   parser.put("ý","ý"); 
        parser.put("€","?");   parser.put("¥","¥");    
        parser.put("œ","?");  parser.put("¢","¢");   
        parser.put("°","°");    parser.put("²","²");
        parser.put("³","³");   parser.put("÷","÷");
        parser.put("\n","<br />");
    }
    /**
     * Permet de convertir une string en codant les caractere spéciaux en HTML
     * @param src : String source.
     * @return rdu : String converti.
     */
    public static String stringToHtml(String src){
        // Si non initialiser
        if(!initialise){
            // j'initialise les vecteurs
            ParserHTML();
            initialise = true;        
        }
        // Oncommence par le "&" sinon on se retrouve avec des "&ampaacute;" a la place de "á"
        rdu = src.replace("&", "&amp");
        src = rdu;
        // je boucle sur la taiile d'un des vecteurs.
        for(Map.Entry<String,String> entry : parser.entrySet()){
            // je remplace le caractere par son code HTML.
            rdu = src.replace(entry.getKey(),entry.getValue());
            // Le rendu devient la source.
            src = rdu;
        }
        return rdu;
    }
    /**
     * Permet de convertir une string code HTML en String.
     * @param src : HTML source.
     * @return rdu : String converti.
     */
    public static String htmlToString(String src){
        // Si non initialiser
        if(!initialise){
            // j'initialise les vecteurs
            ParserHTML();
            initialise = true;        
        }
        rdu = src.replace("&amp", "&");
        src = rdu;
        // je boucle sur la taiile d'un des vecteurs.
        for(Map.Entry<String,String> entry : parser.entrySet()){
            // je remplace le caractere par son code HTML.
            rdu = src.replace(entry.getValue(), entry.getKey());
            // Le rendu devient la source.
            src = rdu;
        }
        return rdu;
    }
    // Le main de test
    public static void main(String [] args){
        System.out.println("---test ParserHTML.htmlToString---");
        String src = "á,â,æ,à,å,ã,ä,ç,é,ê,è,ë,í,î,ì,ï,ñ,ó,ô,ò,ø,õ,ö,ß,þ,ú,û,ù,ü,ý,ÿ,&,<,>,€,œ,¢,¥,°,²,³,÷";
        System.out.println(src);
        System.out.println("---test ParserHTML.stringToHtml---");
        String test = ParserHTML.stringToHtml(src);
        System.out.println(test);
        System.out.println("---test ParserHTML.htmlToString---");
        String test2 = ParserHTML.htmlToString(test);
        System.out.println(test2+"\n");
        System.out.println(src.equals(test2));
        System.out.println("-------------------------------------------------------------------------------------------");
    }
}

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Historique

06 janvier 2007 23:14:57 :
Modification de la source: j'utilise une HashMap au lieu de 2 vecteurs... car je ne connaissais pas cette façon de parcourir une HashMap... Merci à ®om.
07 janvier 2007 12:58:49 :
Ajout du zip
29 janvier 2007 14:28:35 :
correction
29 janvier 2007 14:29:39 :
...

Commentaires et avis

Aucun commentaire pour le moment.

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

comment convertire un string en format html [ par laguich ] Bonjour à tous Je doit afficher des string sur une page jsp ... Cependant il faudrait que je trouve une méthode qui remplace les é par &eacute et Parser une String contenant du xml avec SAX ... [ par jerooome ] Bonjour &#224; tous, Situation: j'ai un client qui ce connect &#224; un serveur via un socket, et qui lui envoie un flux xml, le serveur recoit cela Perdue dans la syntaxe JTextPane et html [ par Fridimette ] Bonjour, Je bosse en ce moment sur un File Printer en java : j'ai des parties fixes et donc j'utilise du code HTML pour la mise en forme =&gt; donc ou Parser HTML [ par jeanphi6 ] Bonjour,  je voudrais parser un fichier HTML. Comme le HTML provient du meme langage que le XML, j'ai utiliser un parser SAX. Mais la page HTML doit ê 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, Javamail envoi d'un mail: format html?? [ par zebulaon ] Bonjour,Je cherche à envoyer un mail au format html grace à l'API javamail.Voici le code Java que j'ai trouvé sur internet. Il fonctionne bien, j'ai f string to object parser [ par matamin ] Salut..je construit une application d'édition de règles Drools et pour ça j'ai un objet nommé règle qui à partir de lui et à la méthode redéfini toStr afficher dans jtable des données de selection de base de données [ par azizomniya ] salut,j'ai un probléme je veux afficher le résultat de selection de la base de données dans un tableau .try {Cl Problème java.lang.NullPointerException [ par yusdingue ] Bonsoir.J'ai créé un programme qui me permet de me connecter à une base de donnée.J'ai un fichier main et deux classes ConnexionBD et Salle. Sauf que Enregistrement d'une MAP [ par ptitelili059 ] Bonsoir à tousJ'ai un petit problème pour enregistrer un fichier.J'ai une MAP composée d'une clé et d'une valeur. La clé est un String et la valeur es


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



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
Temps d'éxécution de la page : 0,437 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.