Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- [Brisanje iz XML-a]
- Primjer:
- //Citanje ugostiteljskih objekata iz xmla i spremanje u vector
- vector<Objekt> vObjekti;
- vector<Objekt>::iterator vObj;
- XMLDocument oXmlDocument;
- oXmlDocument.LoadFile("ime_xmla.xml");
- XMLElement *pRoot = oXmlDocument.FirstChildElement("dataset");
- XMLElement *pChild;
- for (pChild = pRoot->FirstChildElement("Objekt"); pChild != NULL; pChild =
- pChild->NextSiblingElement())
- {
- string sNaziv = pChild->Attribute("naziv");
- string sAdresa = pChild->Attribute("adresa");
- string sGrad = pChild->Attribute("grad");
- float fLat = stof(pChild->Attribute("lat"));
- float fLng = stof(pChild->Attribute("lng"));
- int nTip = atoi(pChild->Attribute("tip"));
- int nZona = atoi(pChild->Attribute("zona"));
- vObjekti.push_back(Objekt(sNaziv, sAdresa, sGrad, fLat, fLng, nTip, nZona));
- }
- //Ispis ugostiteljskih objekata preko tablice
- int pomocna = 0;
- for (vObj = vObjekti.begin(); vObj != vObjekti.end(); ++vObj)
- {
- //ispis svih objekata u tablicu
- }
- //Biranje koji zelim obrisati preko ID-a
- cout << "Upisite ID objekta koji zelite obrisati:";
- int id = 0;
- cin >> id;
- vObjekti.clear();
- XMLObrisi(id);
- Funkcija:
- void Objekt::XMLObrisi(int id)
- {
- XMLDocument oXmlDocument;
- oXmlDocument.LoadFile("ime_xmla.xml");
- XMLElement *pRoot = oXmlDocument.FirstChildElement("dataset");
- XMLElement *pChild;
- int pomocna = 0;
- for (pChild = pRoot->FirstChildElement("Objekt"); pChild != NULL; pChild =
- pChild->NextSiblingElement())
- {
- pomocna++;
- if (pomocna == id)
- {
- pRoot->DeleteChild(pChild);
- oXmlDocument.SaveFile(UgostiteljskiXML.c_str());
- break;
- }
- }
- }
- Funkcija prolazi kroz XML redom i kada varijabla pomocna i id budu jednake na tom mjestu obrise u XML-u.
Advertisement
Add Comment
Please, Sign In to add comment