gpt4 book ai didi

java - 如何阻止 HTMLWriter 编写错误的 HTML? (使用 HTMLEditorKit)

转载 作者:太空宇宙 更新时间:2023-11-04 08:09:03 24 4
gpt4 key购买 nike

这是令人惊讶的行为。我创建一个 JTextPane ,将其设置为使用 HTMLEditorKit,并用有效的 HTML 填充它。但默认情况下,Java 的 HTMLWriter 创建无效 HTML。大多数项目都正确序列化,但 img 标签丢失了结束斜杠,因此:

<img src="https://localhost:9443/ccm/service/com.ibm.team.workitem.common.internal.model.IImageContentService/processattachment/_7rfpIMXdEeGLRroh_7O2yQ/workflow/resolve.gif" alt="Resolved" border="0"/>

写为:

<img src="https://localhost:9443/ccm/service/com.ibm.team.workitem.common.internal.model.IImageContentService/processattachment/_7rfpIMXdEeGLRroh_7O2yQ/workflow/resolve.gif" alt="Resolved" border="0">

我对所有内容都使用默认值。为什么不起作用,有什么简单的解决办法吗?

这是一个代码片段:

    JTextPane editor = new JTextPane();
HTMLEditorKit htmlKit = new HTMLEditorKit();
editor.setContentType("text/html");
editor.setEditorKit(htmlKit);
editor.setText( '*<ADD SOME VALID HTML FROM A FILE>*' );
HTMLDocument d = (HTMLDocument)editor.getDocument();
StringWriter fw = new StringWriter();
HTMLWriter aHTMLWriter = new HTMLWriter(fw,d);
aHTMLWriter.write();
String txt = fw.toString();
// Now txt is not valid HTML ... eek!

最佳答案

遗憾的是,HTMLEditorKit 仅支持 HTML 3.2,因此不应该关闭 img 标签。所以它的行为是“正确的”。

A Request for enhancement 1999年发布,所以也许很快就会实现。

关于java - 如何阻止 HTMLWriter 编写错误的 HTML? (使用 HTMLEditorKit),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11558033/

24 4 0