Это правильный путь:
node.appendChild(document.createTextNode("ABC"));
Было бы более эффективно извлекать узел только вместо списка узлов (если это единственный узел):
Node node = (Node) xPath.evaluate(expression, document, XPathConstants.NODE);
Вы можете проверить существующее значение следующими способами:
1, если вы используете свой текущий xpath, вы должны проверить, есть ли дочерний узел или нет:
node.getFirstChild() != null // in this case, the node.getFirstChild().getNodeValue() gives back the stored text.
2, или, вы можете проверить это следующим образом:
String expression = "/Document/FIToFICstmrCdtTrf/GrpHdr/TtlIntrBkSttlmAmt/text()";
Node node = (Node) xPath.evaluate(expression, document,
XPathConstants.NODE);
node != null // in this case, the node.getNodeValue() gives back the stored text.