Mam następujący kod:Problemy ustawienie nowej wartości węzła w Javie, Dom, analizowania XML
DocumentBuilder dBuilder = dbFactory_.newDocumentBuilder();
StringReader reader = new StringReader(s);
InputSource inputSource = new InputSource(reader);
Document doc_ = dBuilder.parse(inputSource);
a następnie chciałbym, aby utworzyć nowy element w tym węźle tuż pod węzła głównego z tym kodem :
Node node = doc_.createElement("New_Node");
node.setNodeValue("New_Node_value");
doc_.getDocumentElement().appendChild(node);
Problem polega na tym, że węzeł zostaje utworzony i dołączony, ale wartość nie jest ustawiona. Nie wiem, czy po prostu nie widzę wartości, gdy patrzę na mój xml, jeśli jest ukryty w jakiś sposób, ale nie sądzę, że tak jest, ponieważ próbowałem uzyskać wartość węzła po wywołaniu węzła tworzenia i zwraca null
. Jestem nowy w xml i dom i nie wiem, gdzie jest przechowywana wartość nowego węzła. Czy to jest jak atrybut?
<New_Node value="New_Node_value" />
lub robi to umieścić wartość tutaj:
<New_Node> New_Node_value </New_Node>
Każda pomoc będzie mile widziana,
Dzięki, Josh
Piszesz nowy DOM z powrotem do pliku? Nie widzę żadnego odniesienia do pisania, a ty powołujesz się na xml. –
@ RD01 - Tak, piszę to z powrotem do pliku. Domyślam się, że moje główne pytanie na tym etapie brzmi: co robi node.setNodeValue(), jeśli nie ustawia tekstu lub atrybutu? – Grammin