我需要编写一个基于 swing 的编辑器,它可以打开指定的 xml 文件,其中包含我必须在 a<p>
和</p>
标签之间使用的文本,但文件中还有其他标签。文件中还有其他无用的信息,我不需要显示,但需要保留。我只需要显示 a 中提到的标签内的文本JTextComponent
,让用户修改它并以某种方式将更改写回底层 xml 源。xml 文件中标签的位置因文件而异,并且文件中有多个<p>
标签,我应该一次显示并编辑所有标签的内容。你怎么看?完成上述任务的最佳方法是什么?
问问题
5117 次
3 回答
4
如果您想要一个快速的'n'dirty 编程解决方案,只需将您的 XML DOM 读入 JTree。这是您可以在网上找到的众多示例之一:
http://www.developer.com/xml/article.php/3731356/Displaying-XML-in-a-Swing-JTree.htm
如果您正在寻找开源 XML 编辑器,您可能需要考虑 Amaya:
PS:您可能知道,Swing 的“JTree”实现是最大的 MVC - 您可以轻松调整任何示例来过滤树模型的内容(即过滤/修改您的 DOM 内容源),或更改外观(即修改您的 JTree 的外观和/或行为)。
于 2011-11-02T20:15:43.180 回答
3
http://java-sl.com/xml_editor_kit.html
您可以使用该工具包作为您项目的基础。添加 aDocumentFilter
以允许仅编辑纯文本。
于 2011-11-03T06:00:41.877 回答
2
- 将 XML 加载到 DOM 树中
- 在您的 UI 中向用户呈现所需的文本
- 当用户提交更改时,使用新文本更新 DOM 树
- 将 DOM 树序列化回 XML
于 2011-11-02T20:04:57.907 回答