有谁知道如何在 Java 中以编程方式生成 HTMLDocument 对象,而不需要在外部生成字符串,然后使用 HTMLEditorKit#read 来解析它?我问的两个原因:
首先,我的 HTML 生成例程需要非常快,并且我认为将字符串解析为内部模型比直接构建该模型成本更高。
其次,面向对象的方法可能会产生更清晰的代码。
我还应该提到,出于许可原因,我无法使用 JVM 附带的库以外的任何库。
一种面向对象的方法是使用一个名为ECS http://jakarta.apache.org/ecs/index.html.
这是一个非常简单的库,并且已经很长时间没有改变了。话又说回来,HTML 4.01 规范也没有改变;)我使用过 ECS,并认为它比仅使用 String 或 StringBuffers/StringBuilder 生成大型 HTML 片段要好得多。
小例子:
Option optionElement = new Option();
optionElement.setTagText("bar");
optionElement.setValue("foo");
optionElement.setSelected(false);
optionElement.toString()
现在会产生:
<option value='foo'>bar</option>
该库支持 HTML 4.0 和 XHTML。最初唯一困扰我的事情a lot与 XHTML 版本相关的类名称以小写字母开头:option
, input
, a
, tr
等等,这违背了最基本的 Java 约定。但如果您想使用 XHTML,您可以习惯这一点;至少我做到了,速度快得惊人。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)