Convertendo String "<" em "<"

Olá pessoal,

Estou trabalhando na criação de um sistema que gera dinamicamente um arquivo HTML. Porém, estou tendo problemas quando o usuário insere caracteres reservados da linguagem HTML como, por exemplo, o ‘<’ e ‘>’ que são utilizados na criação das tags. Como faço para converter automaticamente, por exemplo, a String “Teste1<Teste2” em “Teste1&lt;Teste2”, bem como outros possíveis casos desse problema?

Abraços,
Davi Cabral

Javadoc é seu amigo: http://java.sun.com/j2se/1.4.2/docs/api/java/lang/String.html#replaceAll(java.lang.String, java.lang.String)

faz um metodo para converter isso tipo assim:

  public static String encodeHtmlTagFull(String tag) {
    if (tag == null)
      return null;
    int length = tag.length();
    StringBuffer encodedTag = new StringBuffer(2 * length);
    for (int i = 0; i < length; i++) {
      char c = tag.charAt(i);
      if (c == '"') {
        encodedTag.append("&quot;");
      }     
      else if (c == '<'){
        encodedTag.append("&lt;");
      }
      else
        encodedTag.append(c);
    }
    return encodedTag.toString();

  }

kkkkkkkkkkk :smiley: fala serio :smiley: Não tem um modo mais elegante, não? Acho q o jeito eh colocar assim mesmo. Obrigado.

Veja a API do commons lang em :

http://jakarta.apache.org/commons/lang/api/org/apache/commons/lang/StringEscapeUtils.html

Método escapeHtml da classe StringEscapeUtils.