Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Общие вопросы > jdom create xml with attributes


Автор: Valeria 13.2.2009, 15:27
Привет!
вопрос простой, я создаю xml-файл с помощью jdom. у одного элемента есть много атрибутов, я их записываю в определенном мне порядке, а после того, как я считываю информацию обратно, то получаю данный список атрибутов, отсортированным по именам(по алфавиту).
этого можно избежать и получить свой порядок?
правда может несколько некорректный способ получения xml :
Код

       DocumentBuilderFactory dbfactory = DocumentBuilderFactory.newInstance();
        dbfactory.setNamespaceAware(true);
        InputSource ins = new InputSource(cbis); //cbis - поток из файла
        DocumentBuilder domparser;
        domparser = dbfactory.newDocumentBuilder();
        org.w3c.dom.Document w3cDoc = domparser.parse(ins);
        DOMBuilder builder = new DOMBuilder("org.jdom.adapters.XercesDOMAdapter");
        Document oldDoc = builder.build(w3cDoc);

ну а создаю элемент стандартно :
Код

        Element em = new Element("VIEW");
        em.setAttribute(new Attribute("ShortName", name));        
        em.setAttribute(new Attribute("Name", "Value"));        


Автор: garbuz 13.2.2009, 16:23
Несколько дней назад игрался с dom, sax, jdom. При выводе xml-кода dom упорядочивает атрибуты по имени. Sax и Jdom так не делали, выводили все, как было в коде. Используйте jdom  smile 

Автор: Valeria 13.2.2009, 16:34
дело в том, что когда я вывожу все в файл, все в порядке, атрибуты не отсортированы, но когда мне нужно обратно взять из файла информацию и распарсить в xml - вот тогда я и получаю отсортированные атрибуты.
но к сожалению я не нашла другого способа, как это сделать... только как описано выше.

Автор: garbuz 13.2.2009, 19:29
Может вам это подойдет... http://en.wikipedia.org/wiki/JAXB

Автор: Valeria 16.2.2009, 12:29
мне просто нужен другой парсер?! неужели никто не знает? ):
в интернете не могу найти  smile 

Автор: garbuz 16.2.2009, 12:53
http://www.ibm.com/developerworks/ru/edu/xmljava/index.html
Рассматривается три примера - dom, sax, jdom. Но как я понял, вас надо создавать xml, а не парсить.
Еще можете тут глянуть http://forum.sources.ru/index.php?showtopic=198786

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)