2016-10-13 3 views
0

Мой xml-файл;получить имена элементов в сложном типе (выбор) из файла xml

<?xml version="1.0" encoding="UTF-8"?> 
<tns:military xmlns:tns="Military.xsd" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="Military.xsd Military.xsd "> 
    <personel sicilNo="0" title="Bay"> 
     <militaryP> 
      <class> 
       <erbas> 
        <ad>aaa</ad> 
        <soyad>bbb</soyad> 
        <telefon>5556667788</telefon> 
        <yas>30</yas> 
        <rankErbas>Uzman</rankErbas> 
       </erbas> 
      </class> 
      <department>tabur</department> 
     </militaryP> 
    </personel> 
</tns:military> 

на основе схемы xml;

<complexType name="tClass"> 
    <choice> 
     <element name="erbas" type="tns:tErbas"></element> 
     <element name="astSubay" type="tns:tAstsubay"></element> 
     <element name="subay" type="tns:tSubay"></element> 
     <element name="general" type="tns:tGeneral"></element> 
    </choice> 
</complexType> 

Я хочу получить имя элемента класса, как я могу его обработать? После того, как я получу его, я использую его в инструкции switch/case. (в моем примере я хочу, чтобы получить "Erbas")

switch(class) 
    case(erbas) .... 
    case(astsubay) ... 

ответ

0
String class_ = elem.getElementsByTagName("class").item(0). 
getChildNodes().item(1).getNodeName(); 

добавить этот код. Оно работает. Но я не понимаю, как это работает :) Когда я перехожу к «item (1)» из пункта (0), он дает имя дочернего элемента.

Смежные вопросы