Эта статья содержит инструкции, советы или практические советы . ( Май 2011 г. ) |
Стабильный выпуск | 2.0.6 / 15 февраля 2015 г. |
---|---|
Репозиторий | |
Написано в | Ява |
Операционная система | Кроссплатформенность |
Тип | Привязка XML |
Лицензия | Похоже на: Apache License |
Веб-сайт | jdom |
JDOM - это основанная на Java объектная модель документа с открытым исходным кодом для XML, которая была разработана специально для платформы Java, чтобы она могла использовать преимущества своих языковых функций. JDOM интегрируется с объектной моделью документа (DOM) и простым API для XML (SAX), поддерживает XPath и XSLT . Он использует внешние парсеры для создания документов. JDOM был разработан Джейсоном Хантером и Бреттом Маклафлином, начиная с марта 2000 года. Он был частью процесса сообщества Java как JSR 102, хотя с тех пор от этого отказались.
Примеры [ править ]
Предположим, файл "foo.xml" содержит этот XML-документ:
<shop name = "shop for geeks" location = "Tokyo, Japan" > <computer name = "iBook" price = "1200 $" /> <comic_book name = "Dragon Ball vol 1" price = "9 $" /> <geekyness_of_shop price = "бесценный" /> </shop>
Можно разобрать XML-файл на дерево объектов Java с помощью JDOM, например:
SAXBuilder builder = новый SAXBuilder (); Документ doc = builder . build ( новый FileInputStream ( "foo.xml" )); Элемент root = doc . getRootElement (); // root.getName () - это "магазин" // root.getAttributeValue ("name") - "магазин для гиков" // root.getAttributeValue ("location") - "Токио, Япония" // root.getChildren () - это объект java.util.List, содержащий 3 объекта Element.
Если вы не хотите создавать объект документа из какого-либо файла или любого входного потока, вы можете создать объект документа для элемента.
Корень элемента = новый элемент ( «магазин» ); // здесь <shop> </shop> - это корневой документ doc = new Document ( root ); // создаем новый документ с предоставленным элементом в качестве корня
И наоборот, можно построить дерево элементов, а затем сгенерировать из него XML-файл, как в следующем примере:
Корень элемента = новый элемент ( «магазин» ); корень . setAttribute ( "имя" , "магазин для гиков" ); корень . setAttribute ( "местоположение" , "Токио, Япония" ); Элемент item1 = новый элемент ( «компьютер» ); item1 . setAttribute ( "имя" , "iBook" ); item1 . setAttribute ( "цена" , «1200 $» );корень . addContent ( item1 ); // выполнить аналогичные действия для других элементов XMLOutputter outputter = новый XMLOutputter (); вывод . вывод ( новый документ ( корень ), новый FileOutputStream ( "foo2.xml" ));