Я видел несколько вопросов в этой общей области, но не могу найти ничего конкретного для Java и вытащить значение одного узла.Анализ одного XML-узла из ответа веб-службы
У меня есть веб-службы, которая возвращает значения, отформатированные как так:
<string xmlns="http://tempuri.org/">Hello</string>
В приложении Android, я пытаюсь извлечь «Hello» часть в середине без XML
тегов.
У меня в настоящее время метода, как так сделать это:
public static String getParsedString(String xml)
{
try
{
DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder documentBuilder = documentBuilderFactory.newDocumentBuilder();
InputSource input = new InputSource();
StringReader stringReader = new StringReader(xml);
input.setCharacterStream(stringReader);
Document document = documentBuilder.parse(input);
NodeList nodes = document.getElementsByTagName("string");
return nodes.item(0).getNodeValue().toString();
}
catch(Exception ex)
{
ex.printStackTrace();
}
return null;
}
Однако узел разбираемым, по-видимому, не содержит никаких данных, так как при попытке метода toString()
, он выдает следующее сообщение об ошибке.
java.lang.NullPointerException
Я не уверен, что нужно учесть xmlns="http://tempuri.org/"
в документе синтаксического анализа, но я не могу понять это.
Первая попытка для XML корневого элемента, а затем искать конкретный элемент –