parse - load html java
eliminar etiqueta html en android (5)
Tengo el siguiente seguimiento de XML:
<Description>
<p>Touch, tap, flip, slide! You don't just read Books, you experience it.</p>
</Description>
Aquí tengo que mostrar la descripción como
Toca, toca, voltea, desliza! Tú no 39. solo lees los Libros, lo experimentas.
Aquí he manejado el analizador como:
public static String removeHTML(String htmlString)
{
// Remove HTML tag from java String
String noHTMLString = htmlString.replaceAll("//<.*?//>", "");
// Remove Carriage return from java String
noHTMLString = noHTMLString.replaceAll("/r", "<br/>");
noHTMLString = noHTMLString.replaceAll("<([bip])>.*?<//1>", "");
// Remove New line from java string and replace html break
noHTMLString = noHTMLString.replaceAll("/n", " ");
noHTMLString = noHTMLString.replaceAll("/"", """);
noHTMLString = noHTMLString.replaceAll("<(.*?)//>"," ");//Removes all items in brackets
noHTMLString = noHTMLString.replaceAll("<(.*?)///n"," ");//Must be undeneath
noHTMLString = noHTMLString.replaceFirst("(.*?)//>", " ");
noHTMLString = noHTMLString.replaceAll(" "," ");
noHTMLString = noHTMLString.replaceAll("&"," ");
return noHTMLString;
}
En endElement:
public void endElement(String uri, String localName, String qName)throws SAXException {
currentElement = false;
if (localName.equalsIgnoreCase("Description")){
sitesList.setDescription(currentValue);
String Sub_arry=n+currentValue;
Appscontent.Sub_arraylistdes.add(Sub_arry);
String stringWithoutHTML=removeHTML(currentValue);
System.out.println("description value----->"+n+att_ID+"------>>"+stringWithoutHTML);}
Ahora tengo que ejecutar la aplicación significa que la etiqueta html se muestra con mi descripción ... Aquí, ¿cómo puedo eliminar la etiqueta HTML? por favor, dame una solución para estos?
Deseo mostrar la descripción sin etiquetas Html ... proporcione una solución para estos.
EDITAR:
if (localName.equalsIgnoreCase("Description")){
sitesList.setDescription(currentValue);
String Sub_arry=n+currentValue;
StringBuffer sb = new StringBuffer();
sb.append(Sub_arry);
String newString = sb.toString();
Appscontent.Sub_arraylistdes.add(newString);
System.out.println("description value----->"+n+att_ID+"------>>"+newString);}
EDITAR:
public static String html2text(String html) {
return Jsoup.parse(html).text();
}
En endElement:
if (localName.equalsIgnoreCase("Description")){
sitesList.setDescription(currentValue);
String Sub_arry=n+currentValue;
Appscontent.Sub_arraylistdes.add(Sub_arry);
String stringWithoutHTML=html2text(currentValue);
System.out.println("description value----->"+n+att_ID+"------>>"+stringWithoutHTML);}
Pero no obtuve el o / p..pls darme una solución para estos ??? ¿Cómo puedo eliminar las etiquetas html en esta descripción ...
De acuerdo con mi conocimiento, puede obtener datos mediante una interfaz que se puede abrir.
Intenta usar esto:
Spanned spannable = Html.fromHtml (arrayList.get (position) .getBusinessDescription ());
System.out.println ("valor de descripción ----->" + n + att_ID + "------ >>" + spannable);
revisa el siguiente enlace para más detalles:
http://developer.android.com/reference/android/text/Spanned.html http://developer.android.com/reference/android/text/Spannable.html
Una opción es agregar la biblioteca JSoup , importarla y usarla de la siguiente manera:
public static String html2text(String html) {
return Jsoup.parse(html).text();
}
Puede eliminar fácilmente cualquier etiqueta HTML en Android utilizando la clase de HTML incorporada en Android. Importar android.text.Html;
. Ahora, teniendo en cuenta que "data" es su variable String que tiene etiquetas HTML, usa Html.fromHtml(data).toString()
para recuperar la cadena sin etiquetas HTML.
String plain = Html.fromHtml("your_html_string").toString();
Método simple para eliminar html Esto devolverá texto con formato no html
private String removeHtml(String html) {
html = html.replaceAll("<(.*?)//>"," ");
html = html.replaceAll("<(.*?)///n"," ");
html = html.replaceFirst("(.*?)//>", " ");
html = html.replaceAll(" "," ");
html = html.replaceAll("&"," ");
return html;
}
Para formatear según etiqueta html y eliminar etiqueta.
Html.fromHtml(data).toString();