我正在做很多使用org.w3c.dom類的XML解析/轉換。如何更改Java中XML屬性的一部分?
我有兩個屬性:「長度」和「驗證」。
我已解析的XML文檔,在Node對象的兩個屬性(例如節點nodeLengthAttr = attr.getNamedItem(「長度」);)
我想通過「驗證」屬性並輸入搜索使用.setTextContext或類似方法的特定點處的長度值。所以vailidation會是「一些文字+長度+一些測試」。
我基本上想把這個屬性看作一個字符串,任何想法?
我正在做很多使用org.w3c.dom類的XML解析/轉換。如何更改Java中XML屬性的一部分?
我有兩個屬性:「長度」和「驗證」。
我已解析的XML文檔,在Node對象的兩個屬性(例如節點nodeLengthAttr = attr.getNamedItem(「長度」);)
我想通過「驗證」屬性並輸入搜索使用.setTextContext或類似方法的特定點處的長度值。所以vailidation會是「一些文字+長度+一些測試」。
我基本上想把這個屬性看作一個字符串,任何想法?
聽起來像一個
import org.w3c.dom;
//...
Attr attrValidation = (Attr)attr.getNamedItem("validation");
String value = attrValidation.getValue();
//Modify the string
//...
attrValidation.setValue(value);
是你在找什麼。很難說沒有更多的上下文。
如果您確定,您的Node
實例是一個元素,將其轉換爲org.w3c.dom-Element
。
Element.getAttribute()
獲取屬性值作爲String
。Element.setAttribute()
。例子:
if(node instanceof Element) {
Element el = (Element) node;
String s = el.getAttribute("validation");
String modified = ...
el.setAttribute("validation", modified);
}
這看起來像它應該工作,謝謝 – grimebox
看起來與上面相同的解決方案,謝謝 – grimebox