segunda-feira, 10 de junho de 2013

Retirar html de uma string

Pessoal,

Mais um código para vcs, segue ai um código simples para retirar um HTML de uma String.

Sei que não é grande coisa, mas sempre precisamos de coisas assim.

 import java.util.ArrayList;  
 import java.util.List;  
 import java.util.regex.Matcher;  
 import java.util.regex.Pattern;  
 public class RetiraHTML {  
      public static void main(String[] args) {  
           String html = "<font color=Firebrick >Etapa: olha ai >>>>> teste BLABLABLA<br>Responsável : JOAQUIM<br>Data: 23/08/2010 13:58</font>dfgfdg <br><br><br>";  
           System.out.println(new RetiraHTML().retiraHTML(html));  
      }  
      public String retiraHTML(String conteudo){  
           String retorno = "";  
           List<Integer[]> posicoes = new ArrayList<Integer[]>();  
           int posicaoInicialAbre = -1;  
           boolean achouAbre = false;  
           for (int i = 0; i < conteudo.length(); i++) {  
                if ('<' == conteudo.charAt(i)){  
                     posicaoInicialAbre = i;  
                     achouAbre = true;  
                }else if ('>' == conteudo.charAt(i)){  
                     if (achouAbre){  
                          achouAbre = false;  
                          posicoes.add(new Integer[]{posicaoInicialAbre,i+1});  
                          posicaoInicialAbre = -1;  
                     }  
                }  
           }  
           String conteudoNovo = conteudo;  
           for (Integer[] integers : posicoes) {  
                if (integers.length == 2){  
                     String achou = conteudo.substring(integers[0], integers[1]);  
                     if ("<br>".equals(achou)){  
                          conteudoNovo = conteudoNovo.replace(achou, "\n");  
                     }else if ((">".equals(achou))||("<".equals(achou))){  
                          conteudoNovo += achou;  
                     }else{  
                          conteudoNovo = conteudoNovo.replace(achou, "");  
                     }  
                }  
           }  
           return conteudoNovo;  
      }  
 }  

Espero que tenha ajudado !

Nenhum comentário:

Postar um comentário