gpt4 book ai didi

java - 使用 Jsoup 解析时保持 HTML boolean 属性的原始形式

转载 作者:行者123 更新时间:2023-11-30 03:42:11 25 4
gpt4 key购买 nike

使用 Jsoup 解析以下 HTML 时:

String html = "<iframe allowfullscreen></iframe>";
Document doc = Jsoup.parseBodyFragment(html);
System.out.println(doc.body().html());

我得到以下输出:

<iframe allowfullscreen=""></iframe>

即使它必须具有相同的含义( source ),是否有任何方法可以告诉 Jsoup 将 boolean 属性保留为其原始形式(即输入中的属性,allowfullscreen 相反)示例中的 allowfullscreen="")?

最佳答案

不幸的是,我认为没有一个简单的设置可以控制它。如果有的话,您会期望在 Document.OutputSettings 中找到它。 .

好消息,正如我在评论中所说,属性的原始形式被保留并可通过attr使用,但您可以'无法区分 allowfullscreen 本身和 allowfullscreen="" 之间的区别。

因此,您可以自己序列化该文档,但无法区分这一差异。或者,由于 Jsoup 是开源的,您可以为此添加一个 Document.OutputSettings 设置(并且可能对解析器进行修改,让您区分上述两种情况之间的差异)并更新中的逻辑html 和相关方法来尊重设置,最好通过 fork the project 、进行更改、对更改进行测试以及执行拉取请求。 :-) 这可能不是人们想要的答案,但操作系统的伟大之处在于,您可以挠痒痒并在此过程中改进项目。

关于java - 使用 Jsoup 解析时保持 HTML boolean 属性的原始形式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26584974/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com