Я действительно новичок в XML Parsing в Java. Я успешно прочитал свой XML, используя Java. Теперь проблема заключается в том, что я хочу заполнить строку с результатами анализа. Мой код:
DocumentBuilderFactory builderFactory =
DocumentBuilderFactory.newInstance();
DocumentBuilder builder = null;
try {
builder = builderFactory.newDocumentBuilder();
org.w3c.dom.Document document = builder.parse(
new FileInputStream("c:\\y.xml"));
XPath xPath = XPathFactory.newInstance().newXPath();
String expression = "/ADOXML/MODELS/MODEL/INSTANCE/ATTRIBUTE[@name='Description' and @type='STRING']";
NodeList nodeList = (NodeList) xPath.compile(expression).evaluate(document, XPathConstants.NODESET);
int i;
for (i = 0; i < nodeList.getLength(); i++) {
String txt=nodeList.item(i).getFirstChild().toString();
System.out.print(txt);
}
System.out.print("\n\n\nIIIII="+i);
} catch (ParserConfigurationException | SAXException | IOException e) {
System.out.print(e);
}
Ошибка, которая мне дает:
NodeList не может преобразовать в Java.Lang.String!
Так как я могу избавиться от него, может кто-нибудь мне помочь!
Я думаю, вы хотите String txt=nodeList.item(i).getTextContent();
вместо String txt=nodeList.item(i).getFirstChild().toString();
,