1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
|
String^ GetXmlszVal(XPathNavigator^ xPathNav, String^ szNode){
String^ szRet = "ERROR";
XPathNodeIterator^ xPathNod = xPathNav->Select(szNode);
xPathNod->MoveNext();
if(xPathNod->Count != 0)
szRet = xPathNod->Current->Value;
return szRet;
}
void ShowXmlValue(XPathNavigator^ xPathNav, String^ szNode){
XPathNodeIterator^ xPathNod = xPathNav->Select(szNode + "/Field");
while(xPathNod->MoveNext())
MessageBox::Show(xPathNod->Current->Value);
}
void LoadXmlData(){
XPathDocument^ xPathDoc = gcnew XPathDocument("Config.xml");
XPathNavigator^ xPathNav = xPathDoc->CreateNavigator();
XPathNodeIterator^ xPathNod = xPathNav->Select("/Config/Data");
while(xPathNod->MoveNext()){
MessageBox::Show(GetXmlszVal(xPathNod->Current, "./WorkingPath"));
MessageBox::Show(GetXmlszVal(xPathNod->Current, "./PublishPath"));
}
xPathNod = xPathNav->Select("/Config");
if(xPathNod->MoveNext()){
ShowXmlValue(xPathNod->Current, "./AreasFields");
ShowXmlValue(xPathNod->Current, "./ProjectsFields");
ShowXmlValue(xPathNod->Current, "./RatesFields");
ShowXmlValue(xPathNod->Current, "./TimeFields");
ShowXmlValue(xPathNod->Current, "./TodosFields");
}
} |