WYSIWYG XML-редактор Java

Мне нужно написать редактор на основе Swing, который может открывать определенные файлы XML, который содержит текст, который я должен использовать между <p> а также </p> тег, но есть и другие теги в файле. В файле есть и другие бесполезные данные. Мне не нужно их отображать, но их нужно сохранить. Мне нужно отобразить только текст внутри упомянутых тегов в JTextComponent и позволить пользователю изменить его и каким-то образом записать изменения в исходный XML-источник. Положение тегов в файле XML будет варьироваться от файла к файлу, и существует более одного <p> теги в файле, и я должен отобразить и сделать редактируемым содержимое всех из них одновременно. Как вы думаете? Каков наилучший способ выполнить вышеуказанную задачу?

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).

http://java-sl.com/xml_editor_kit.html Вы можете использовать этот комплект в качестве основы для своего проекта. Добавить DocumentFilter разрешить редактирование только простого текста.

  1. Загрузите XML в дерево DOM
  2. Представьте необходимый текст пользователю в вашем пользовательском интерфейсе
  3. Когда пользователь фиксирует изменения, обновите дерево DOM новым текстом
  4. Сериализация дерева DOM обратно в XML
Другие вопросы по тегам