cs_Yossi
Messages postés40Date d'inscriptionmardi 11 mars 2003StatutMembreDernière intervention 5 septembre 2006
-
22 août 2006 à 17:47
Twinuts
Messages postés5375Date d'inscriptiondimanche 4 mai 2003StatutModérateurDernière intervention14 juin 2023
-
23 août 2006 à 11:53
Bonjour,
savez vous si il existe une classe pour encoder une chaine quelquonque en html . Je cherche l'équivalent de la fonction html_encode(chaine) en php. Merci.
Twinuts
Messages postés5375Date d'inscriptiondimanche 4 mai 2003StatutModérateurDernière intervention14 juin 2023111 23 août 2006 à 10:53
Salut,
tu vois en étant plus explicite sur ta demande c'est tout de suite clair par ce que les "Je cherche l'équivalent de la fonction html_encode(chaine) en php" c'est bien c'est beau mais si tu ne fais pas de php cela veut rien dire !!!
Pour ce que tu demande il n'y a pas d'equivalence dans l'api standard java (cela dis peut etre dans l'api servlet... a voir) sinon voici un exemple pour encoder au format html (j'utilise l'unicode pour rester portable sur differents OS
public class HTTPUtils {
private static final HtmlUnicode [] HTML_UNICODE = {
new HtmlUnicode( "&", '&' ),
new HtmlUnicode( "<", '<' ),
new HtmlUnicode( ">", '>' ),
new HtmlUnicode( """, '"' ),
//MAJUSCULES
new HtmlUnicode( "À", '\u00c0' ),
new HtmlUnicode( "Á", '\u00c1' ),
new HtmlUnicode( "Â", '\u00c2' ),
new HtmlUnicode( "Ã", '\u00c3' ),
new HtmlUnicode( "Ä", '\u00c4' ),
new HtmlUnicode( "Å", '\u00c5' ),
new HtmlUnicode( "Æ", '\u00c6' ),
new HtmlUnicode( "Ç", '\u00c7' ),
new HtmlUnicode( "È", '\u00c8' ),
new HtmlUnicode( "É", '\u00c9' ),
new HtmlUnicode( "Ê", '\u00ca' ),
new HtmlUnicode( "Ë", '\u00cb' ),
new HtmlUnicode( "Ì", '\u00cc' ),
new HtmlUnicode( "Í", '\u00cd' ),
new HtmlUnicode( "Î", '\u00ce' ),
new HtmlUnicode( "Ï", '\u00cf' ),
new HtmlUnicode( "Ð", '\u00d0' ),
new HtmlUnicode( "Ñ", '\u00d1' ),
new HtmlUnicode( "Ò", '\u00d2' ),
new HtmlUnicode( "Ó", '\u00d3' ),
new HtmlUnicode( "Ô", '\u00d4' ),
new HtmlUnicode( "Õ", '\u00d5' ),
new HtmlUnicode( "Ö", '\u00d6' ),
new HtmlUnicode( "Ø", '\u00d8' ),
new HtmlUnicode( "Ù", '\u00d9' ),
new HtmlUnicode( "Ú", '\u00da' ),
new HtmlUnicode( "Û", '\u00db' ),
new HtmlUnicode( "Ü", '\u00dc' ),
new HtmlUnicode( "Ý", '\u00dd' ),
new HtmlUnicode( "Þ", '\u00de' ),
new HtmlUnicode( "ß", '\u00df' ),
//MNUSCULES
new HtmlUnicode( "à", '\u00e0' ),
new HtmlUnicode( "á", '\u00e1' ),
new HtmlUnicode( "â", '\u00e2' ),
new HtmlUnicode( "ã", '\u00e3' ),
new HtmlUnicode( "ä", '\u00e4' ),
new HtmlUnicode( "å", '\u00e5' ),
new HtmlUnicode( "æ", '\u00e6' ),
new HtmlUnicode( "ç", '\u00e7' ),
new HtmlUnicode( "è", '\u00e8' ),
new HtmlUnicode( "é", '\u00e9' ),
new HtmlUnicode( "ê", '\u00ea' ),
new HtmlUnicode( "ë", '\u00eb' ),
new HtmlUnicode( "ì", '\u00ec' ),
new HtmlUnicode( "í", '\u00ed' ),
new HtmlUnicode( "î", '\u00ee' ),
new HtmlUnicode( "ï", '\u00ef' ),
new HtmlUnicode( "ð", '\u00f0' ),
new HtmlUnicode( "ñ", '\u00f1' ),
new HtmlUnicode( "ò", '\u00f2' ),
new HtmlUnicode( "ó", '\u00f3' ),
new HtmlUnicode( "ô", '\u00f4' ),
new HtmlUnicode( "õ", '\u00f5' ),
new HtmlUnicode( "ö", '\u00f6' ),
new HtmlUnicode( "ø", '\u00f8' ),
new HtmlUnicode( "ù", '\u00f9' ),
new HtmlUnicode( "ú", '\u00fa' ),
new HtmlUnicode( "û", '\u00fb' ),
new HtmlUnicode( "ü", '\u00fc' ),
new HtmlUnicode( "ý", '\u00fd' ),
new HtmlUnicode( "þ", '\u00fe' ),
new HtmlUnicode( "ÿ", '\u00ff' )
};
public static String encode(String text) {
String tok = "";
for(HtmlUnicode hu : HTML_UNICODE)
tok += hu.getUnicode();
StringTokenizer tokenizer = new StringTokenizer(text, tok, true);
int count = tokenizer.countTokens();
// pas besoin d'encoder
if (count == 1)
return text;
// on met un buffer plus large vu qu'un caractere est remplace par
// plusieurs
StringBuilder buff = new StringBuilder(text.length() + count * 8);
while (tokenizer.hasMoreTokens()) {
String token = tokenizer.nextToken();
if (token.length() == 1) {
for(HtmlUnicode hu : HTML_UNICODE)
if(hu.getUnicode() == token.charAt(0))
buff.append(hu.getHtml());
} else {
buff.append(token);
}
}
return buff.toString();
}
//cette classe permet un acces plus simplifie pour les tableaux
private static class HtmlUnicode{
private char unicode;
private String html;
cs_Yossi
Messages postés40Date d'inscriptionmardi 11 mars 2003StatutMembreDernière intervention 5 septembre 2006 23 août 2006 à 01:26
merci mais c'est pas ça que je demande. Je ne demande pas d'encoder en adresse url mais au format html . C'est à dire "é" en "é" par exemple. Je demande l'équivalent de la fonction html_encode pour ceux qui connaissent bien php.