微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

防止 Jsoup Element 对象标签小写

如何解决防止 Jsoup Element 对象标签小写

我是韩国人。

我英语不太好。

我喜欢 Jsoup。

我的项目中需要 XML(soap) 解析。

我理解了 Document 对象的 Parser.xmlParser()。

但是当我使用 Element 对象时更改小写字符。

例如) if (!requireNamespace("BiocManager",quietly = TRUE)) install.packages("BiocManager") BiocManager::install("SamSPECTRAL")

所以,我检查了这些解决方案。

[第一]

Element element = new Element("TEST") -> <test></test>

Document document = Jsoup.parse("<soapenv:Envelope.....","",Parser.xmlParse())

Node node = new Element("TEST")

Element element = (Element)node; -> <TEST>/<TEST>

[第二个]

document.getElementByTag("soapenv:Body").get(0).appendChild(element)

Document document = Jsoup.parse("",Parser.xmlParse())

呸~呸~

有什么问题吗?

我希望元素对象“new XMLElement("TEST")”或“new HTMLElement("test")”像“new HashMap,new LinkedHashMap”接口格式....

解决方法

您在调用 new Element(tagname) 时遇到的问题是没有传递给创建者的文档上下文,您希望标记区分大小写,因此 jsoup 默认为小写 (HTML) 行为。

以下是确保将区分大小写的设置应用于新元素的几个示例方法:

Document document = Jsoup.parse("<soapenv:Envelope>Foo</soapenv:Envelop>","",Parser.xmlParser());
document.append("<TEST id=1>Bar</TEST>");

Element second = document.createElement("Test");
document.appendChild(second);

System.out.println(document.outerHtml());

给予:

<soapenv:Envelope>Foo</soapenv:Envelope><TEST id="1">Bar</TEST><Test></Test>

有关详细信息,请参阅 Document#createElement(tagname)Element#append(html)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。