, если у меня есть следующий XML:Получить элементы из тегов в XML в Java
<Shapes>
<Numbers>n-3</Numbers>
<Ellipse.0>
<Color>
<Red>r-0</Red>
<Green>g-0</Green>
<Blue>b-255</Blue>
</Color>
<FillColor>
<Red>r-0</Red>
<Green>g-0</Green>
<Blue>b-255</Blue>
</FillColor>
<Position>
<X>x-12</X>
<Y>y-12</Y>
</Position>
<properties>
<Hight>v-123.0</Hight>
<Width>v-12.0</Width>
</properties>
</Ellipse.0>
</Shapes>
и я хочу код в Java, которые получают имена элементов тега для примера: элементов свойств тега (Высота, ширина)
это мой метод:
public static List<String> getNodes(String fileName, String nodeName) throws ParserConfigurationException, SAXException, IOException{
try {
List<String> nodes = new ArrayList<String>();
// Create a factory
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
// Use the factory to create a builder
DocumentBuilder builder = factory.newDocumentBuilder();
Document doc = builder.parse(fileName);
NodeList list = doc.getElementsByTagName(nodeName);
for (int i = 0; i < list.getLength(); i++) {
// Get element
Element element = (Element) list.item(i);
nodes.add(element.getNodeName());
}
return nodes;
} catch (Exception e) {
throw new RuntimeException();
}
}
если NODENAME = "Свойства" возвращает список, который содержит [ "Свойства", "Свойства", "Свойства"]
Попробуйте отправить то, что вы пробовали. – km1
Какой XML-парсер вы используете? Какие проблемы возникают с вашей текущей реализацией? – azurefrog
@ km1 я отредактировал сообщение –