У меня есть файл YAML, например:
top:
names:
- name: john1
- name: john2
- name: john3
- name: john.doe
Теперь мне нужно удалить top / names / name (john.doe). Как я могу добиться этого с помощью yaml-cpp? Мой код:
void deleteNode(string id)
{
YAML::Node config = YAML::LoadFile("doc.yaml");
for (int i = 0; i < config["top"]["names"].size(); i++)
{
if(config["top"]["names"][i]["name"].as<string>() == id)
{
config["top"]["names"].remove(config["top"]["names"][i]);
break;
}
}
}
deleteNode("john.doe");
Похоже, это ничего не делает.