Y at-il une classe standard en Java qui a une méthode pour échapper HTML d'une chaîne?Html s'échapper dans Java?
< ... <
> ... >
Y at-il une classe standard en Java qui a une méthode pour échapper HTML d'une chaîne?Html s'échapper dans Java?
< ... <
> ... >
Non, il n'y en a pas. Vous pouvez utiliser Apache Commons LangStringEscapeUtils#escapeHtml4
pour cela.
Mise à jour: si vous avez une aversion contre les bibliothèques 3ème partie et/ou préférez homegrowing, boucle puis sur les caractères de la chaîne et de déterminer le caractère dans un switch
et de le remplacer par le caractère échappé. Vous pouvez trouver here et here un exemple. Mais encore, en utilisant StringEscapeUtils
est plus facile sur le long terme.
public static String encodeHTML(String s)
{
StringBuffer out = new StringBuffer();
for(int i=0; i<s.length(); i++)
{
char c = s.charAt(i);
if(c=='<')
{
out.append("<"+(int)c+";");
}
else if(c=='>'){
out.append(">"+(int)c+";");
}
else
{
out.append(c);
}
}
return out.toString();
}
Qu'en est-il & –
Je modifie ma réponse. – Alex
Non, mais vous pouvez écrire un:
itérer sur la chaîne:
>
<
&
&#...;
où ... est la valeur char unicode.
Merci pour votre réponse – RMK