我有一个要更新的 xml 文档,我正在使用递归函数遍历节点。但是,我在更新节点属性时遇到问题。我想对用户隐藏所有路径并用密钥替换它们。这是我到目前为止所拥有的
XML 文档示例:
<html>
<head>
<title>my document</title>
<link rel="stylesheet" href="/styles/style.css"/>
</head>
<body>
<a href="link1"></a>
<img src="link2"/>
<img src="link3"/>
<img src="link1"/>
<a href="link5"></a>
</body>
</html>
它通过我的递归函数传递,然后调用 updateNode 函数来更新它
def processNode(n: Node){
if(n.label == "a") {
updateNode(n, "href")
}
}
n.child foreach processNode
}
def updateNode(n: Node, att: String) {
val k: Int = getKey(n.attribute(att).get.toString)
if (k == c){ // if k == c then key does not exists
list += (c -> n.attribute(att).get.toString())
// update node
c = c + 1
} else {
// update node
}}
我已经测试了 .attributes.remove 和 .attributes.append 但它们似乎没有工作。我假设我可能需要使用 .copy 但节点数据类型没有 .copy .. Elem 有