powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Помогите с XML
2 сообщений из 2, страница 1 из 1
Помогите с XML
    #38800264
VaneS Ri_lax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, взял пример вот отсюда
Пытался сделать по примеру код разбора XML
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
import java.io.File;
import java.io.IOException;
import java.util.Iterator;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.jdom2.Content;
import org.jdom2.Document;
import org.jdom2.Element;
import org.jdom2.JDOMException;
import org.jdom2.filter.ContentFilter;
import org.jdom2.filter.ElementFilter;
import org.jdom2.input.SAXBuilder;


public class DataXML {
    
    public static void xxx(){
        
       File file = new File("data.xml");
       SAXBuilder parser = new SAXBuilder();
       Document xmlDoc;
       
        try {
            xmlDoc = parser.build(file);
            System.out.println("Headers");
            List elements = xmlDoc.getRootElement().getContent(new ElementFilter("head"));
            
            Iterator iteratir = elements.iterator();
            
            while(iteratir.hasNext()){
                Element head = (Element) iteratir.next();
                String id = head.getAttributeValue("id");
                String name = head.getAttributeValue("name");
                String departament = head.getAttributeValue("departament");
                
                System.out.println(id + ":" + name + " - " + departament);
            }
            
            System.out.println("Comments");
            iteratir = xmlDoc.getDescendants(new ContentFilter(ContentFilter.COMMENT));
            while(iteratir.hasNext()){
                Content comment = (Content) iteratir.next();
                System.out.println(comment.getParentElement().getName() + " : "+ comment.getValue());
            }
            
        } catch (JDOMException ex) {
            Logger.getLogger(DataXML.class.getName()).log(Level.SEVERE, null, ex);
        } catch (IOException ex) {
            Logger.getLogger(DataXML.class.getName()).log(Level.SEVERE, null, ex);
        }
        
    }
  
}


Результат должен быть таким:
Код: java
1.
2.
3.
4.
5.
6.
Heads:
1: Петров — IT
2: Sidorov S. — Sales
Comments:
head: Head of IT department
head: Head of Sales


А у меня почему то получается такой:
Код: java
1.
2.
3.
4.
5.
6.
Headers
1:null - null
2:null - null
Comments
head : Head of IT department
head : Head of Sales


Почему приходит значение null? Может я что то сделал не так?
Вот сам XML файл:
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
<?xml version="1.0" encoding="UTF-8"?>
<Head_list>
  <head id="1">
    <!--Head of IT department-->
    <name>Petrov P.</name>
    <department>IT</department>
  </head>
  <head id="2">
    <!--Head of Sales-->
    <name>Sidorov S.</name>
    <department>Sales</department>
  </head>
</Head_list>
...
Рейтинг: 0 / 0
Помогите с XML
    #38800276
VaneS Ri_lax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А все, спасибо, вопрос отпал, разобрался сам!) Не внимательный я)
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Помогите с XML
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]