java - 解析简单的 Html 文本

标签 java android html-parsing

我有一些简单的 html 字符串,仅包含 spanstrong 标签,我想将其显示在 TextView 中。由于 TextView 不知道 html 类,我想根据 html 属性为自己设置正确的样式。

<span class="victoria line-text">Victoria line</span> to <strong>Highbury & Islington</strong>

仅仅依靠 Html.fromHtml 的帮助就可能吗?方法和 Spanned 对象来获取以下信息还是我应该创建自己的解析逻辑?

object1
{
   public String text="Victoria line";
   public String tag="Span";
   public String[] classes = {"victoria" "line-text" }
}

object2
{
   public String text=" to ";
   public String tag=null;
   public String[] classes =null;
}
object3
{
   public String text="Highbury & Islington";
   public String tag="Strong";
   public String[] classes =null;
}

最佳答案

我认为您不能仅使用 Html.fromHtml 来实现此目的。当然你可以实现你自己的handler for 标签(适用于无法识别的标签,但您可以使用正则表达式更改已知标签名称并自行处理它们),或者编写自己的标签解析器,但标签分类则不同。

我建议使用Jsoup ,它是html解析lib,然后按类选择元素,并用一些自定义标签替换类和标签。并使用您的自定义标记处理程序将结果提供给 Html.toHtml()。

关于java - 解析简单的 Html 文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60362622/

相关文章:

java - Log4j2 JMX自定义寄存器

android - 无法在android中获取经度和纬度

android - 在弹出窗口上禁用动画

python - 如何一次性抓取超过 100 个谷歌页面

java - 在eclipse上创建android项目时出错

java - Java是如何实现哈希表的?

java.lang.IllegalArgumentException : Unable to create call adapter for interface retrofit. 调用

python - 使用 python 解析 HTML 页面

java - 如何使用Java读取电子邮件中的 Logo 和图像,其中电子邮件的内容是html/纯文本

Java页面重定向