begin process at 2008 08 29 08:36:49
1 233 529 membres
68 nouveaux aujourd'hui
14 291 membres club

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é: 6 741 / 210

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("-------------------------------------------------------------------------------------------");
    }
}
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

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 :
...
    Aucun commentaire pour le moment.

Ajouter un commentaire

Pub



Appels d'offres

Recherche developpeur ...
Budget : 700€
SITE MARCHAND LOCATION...
Budget : 3 000€
SITE MARCHAND POUR HOTEL
Budget : 4 000€

CalendriCode

Août 2008
LMMJVSD
    123
45678910
11121314151617
18192021222324
25262728293031

Téléchargements

Boutique

Boutique de goodies CodeS-SourceS