XML文件的解析库,支持XPath,类似Python的lxml库中的etree。
代码示例:
use etree::*;
use std::path::Path;
fn modify_xml(path_in:P, path_out:P) {
let mut tree = ETree::parse_file(path_in);
let subtree_pos = tree.find("//CHILD-A").unwrap();
let mut subtree = tree.subtree(subtree_pos);
let subtree_child_pos = subtree.find("/SUBCHILD-A").unwrap();
if let Some(node) = subtree.node_mut(subtree_child_pos) {
node.set_text("WEST");
}
// tree.append_next_tree(sub