Я в тупике, надеюсь, я только что сделал глупость, которую легко исправить.
Я передаю строку, полную XML, являющуюся «XMLstring».Я хочу получить один из элементов и напечатать дочерние узлы в «name = value» на консоли.Проблема в том, что консоль продолжает печатать мусор вместе с именем элемента, от которого я не могу разобраться, как избавиться.
В любом случае, этот код:
try {
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
InputSource is = new InputSource();
is.setCharacterStream(new StringReader(XMLstring));
Document doc = db.parse(is);
NodeList nodes = doc.getElementsByTagName("client-details");
Node node = nodes.item(0);
NodeList client_details = node.getChildNodes();
for (int i = 0; i < client_details.getLength(); i++) {
System.out.println(client_details.item(i).getNodeName()+" = "+getTextContents(client_details.item(i)));
}
}
catch (Exception e) {
e.printStackTrace();
}
Дает мне следующее:
#text =
testing-mode = false
#text =
name = testman
#text =
age = 30
Почему он печатает "#text ="?Как мне от этого избавиться?
Я использую NetBeans, если это поможет.