WYSIWYG XML Editor java

时间:2011-11-02 17:13:31

标签: java xml swing wysiwyg jtextcomponent

我需要编写一个基于swing的编辑器,可以打开指定的xml文件,其中包含我必须在<p></p>标记之间使用的文本,但文件中还有其他标记。文件中还有其他无用的信息。我不需要显示它们,但需要保留它。我需要在JTextComponent中仅显示所提及标签内的文本,并让用户修改它,并以某种方式将更改写回到底层xml源。 xml文件中标记的位置因文件而异,文件中有多个<p>标记,我应该一次显示并编辑所有标记中的内容。你怎么看?哪个是完成上述任务的最佳方法?

3 个答案:

答案 0 :(得分:3)

如果你想要一个快速的程序化解决方案,只需将你的XML DOM读入一个JTree即可。以下是您可以在网上找到的众多示例之一:

http://www.developer.com/xml/article.php/3731356/Displaying-XML-in-a-Swing-JTree.htm

如果您正在寻找开源XML编辑器,您可能需要考虑Amaya:

http://www.w3.org/Amaya/

PS: 您可能已经意识到,Swing的“JTree”实现是最大的MVC - 您可以轻松地调整任何示例来过滤树模型的内容(即过滤/修改DOM内容源),或者更改外观(即修改你的JTree的外观和/或行为。)

答案 1 :(得分:3)

http://java-sl.com/xml_editor_kit.html 您可以使用该套件作为项目的基础。添加DocumentFilter以仅允许编辑纯文本。

答案 2 :(得分:2)

  1. 将XML加载到DOM树
  2. 在用户界面中向用户显示所需文字
  3. 当用户提交更改时,使用新文本
  4. 更新DOM树
  5. 将DOM树序列化回XML