Java – Remover tags HTML de uma String (How to remove HTML from String)

html to text

A classe ParserDelegator junto com a interface HTMLEditorKit.ParserCallback do pacote ‘javax.swing.text.html’ permite o reajuste de um texto em HTML para um texto comum, ajustando todas as tags de acentuação e retirando todas as demais tags. Vamos criar uma classe que será responsável por isso, veja abaixo:

public class HtmlToText extends HTMLEditorKit.ParserCallback {

    private StringBuilder s;

    public HtmlToText() {
    }

public String parse(String texto) throws Exception {
byte[] dados = texto.getBytes();
ByteArrayInputStream bais = new ByteArrayInputStream(dados);
Reader reader = new InputStreamReader(bais);
return parse(reader);
}

    public String parse(Reader in) throws IOException {
        s = new StringBuilder();
        ParserDelegator delegator = new ParserDelegator();
        delegator.parse(in, this, Boolean.TRUE);
        return getText();
    }

    @Override
    public void handleText(char[] text, int pos) {
        s.append(text);
        s.append("n");
    }

    public String getText() {
        return s.toString();
    }
}

Para utilizarmos segue o exemplo:

        String html = "<p><div>Corre&ccedil;&otilde;es Monitor 1.0.0.43:</div>";

        HtmlToText htmlToText = new HtmlToText();

        try {
            htmlToText.parse(texto);
            System.out.println(htmlToText.getText());
            // Saida do sistema: "Correções Monitor 1.0.0.43:"
        } catch (Exception e) {
            e.printStackTrace();
        }

Se você for fazer no Android existe uma maneira mais simples veja:
Android – Remover tags HTML de uma String (How to remove HTML from String)

Help DEV – Analista desenvolvedor Java / Android

http://helpdev.com.br/zarelli

2 thoughts on “Java – Remover tags HTML de uma String (How to remove HTML from String)

  1. Pingback: Android – Remover tags HTML de uma String (How to remove HTML from String) « Think Different – Develop

  2. Pingback: Android – Remover tags HTML de uma String (How to remove HTML from String) | Help DEV

Deixe uma resposta

O seu endereço de email não será publicado Campos obrigatórios são marcados *

Você pode usar estas tags e atributos de HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>