Вы можете использовать Element.getTextContent () для получения текста элемента. Обратите внимание, что этот метод может быть принят только в API уровня 8 и выше.
На уровне APi менее 8 вы можете использовать метод getNodeValue . Это будет успешно, только если ваш узел имеет тип TEXT_NODE
EDIT
try {
Document doc =
DocumentBuilderFactory
.newInstance()
.newDocumentBuilder().parse(
new StringBufferInputStream("<desc>let's go for Coffey </desc>"));
NodeList list = doc.getElementsByTagName("desc");
Log.d("MainActivity", list.item(0).getFirstChild().getNodeValue());
} catch (ParserConfigurationException e) {
// ignore
} catch (IOException e) {
// ignore
} catch (SAXException e) {
// ignore
}
Следующий код работает просто отлично. После того, как это выполнено, я получаю в своем logcat:
04-12 21:20:42.766: DEBUG/MainActivity(26843): let's go for Coffey
РЕДАКТИРОВАТЬ 2:
Для работы с сущностями # & ... используйте Html.fromHtml (String) метод для закодированной строки и затем toString () для результата.
Log.d("MainActivity",
Html.fromHTML(
list.item(0).getFirstChild().getNodeValue()
).toString());
РЕДАКТИРОВАТЬ 3
Вот полное решение для вашего случая.
String data = "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?> <root status=\"1\"> <reminder type= \"timer\" id=\"861\"> <user fromid=\"48\" toid=\"48\" fromemail=\"xyz@xyz.com\">Dharmendra Patel</user> <title>10:00 AM Coffy?</title> <desc>Let's go for coffy</desc> <date>13/03/2011 09:22:00</date> <repeat>MO</repeat> <todo><category name=\"\"> <item></item> </category> </todo> </reminder> </root>";
try {
Document doc =
DocumentBuilderFactory
.newInstance()
.newDocumentBuilder().parse(
new StringBufferInputStream(data));
NodeList list = doc.getElementsByTagName("desc");
Node node = list.item(0);
NodeList charNodes = node.getChildNodes();
StringBuilder builder = new StringBuilder();
for(int i = 0, l = charNodes.getLength(); i < l; i++) {
builder.append(Html.fromHtml(charNodes.item(i).getNodeValue()).toString());
}
Log.d("MainActivity", builder.toString());
} catch (ParserConfigurationException e) {
// ignore
} catch (IOException e) {
// ignore
} catch (SAXException e) {
// ignore
}