c++读取XML数据,该怎么处理
c++读取XML数据
xml文件内容:
<?xml version="1.0" encoding="utf-8"?>
<Position>
<P1>
<ON value1="1B" value2="24" value3="0D" value4="05" value5="04" value6="00" value7="0E" value8="00" value9="03" value10="01" value11="98"></ON>
<DOWN value1="1B" value2="24" value3="0D" value4="05" value5="04" value6="00" value7="0F" value8="00" value9="03" value10="01" value11="97"></DOWN>
</P1>
</Position>
现写一个C++程序,通过读取xml文件
BYTE on[11]={1B,。。。。};
BYTE down[11]={1B,。。。。};
求指点。。
------解决方案--------------------
------解决方案--------------------
CMarkUp xml;
xml.Load(strFileName);
xml.ResePos();
while(xml.FindChildElem())
{
//这里面就不知道了。
}
------解决方案--------------------
------解决方案--------------------
tinyxml , msxml, cmarkup 太多类库了
XML解析库-tinyxml,MSXML相关技术文章资料汇总
------解决方案--------------------
CMarkup,很好用的,楼主去看看教程。这段代码你试试
xml文件内容:
<?xml version="1.0" encoding="utf-8"?>
<Position>
<P1>
<ON value1="1B" value2="24" value3="0D" value4="05" value5="04" value6="00" value7="0E" value8="00" value9="03" value10="01" value11="98"></ON>
<DOWN value1="1B" value2="24" value3="0D" value4="05" value5="04" value6="00" value7="0F" value8="00" value9="03" value10="01" value11="97"></DOWN>
</P1>
</Position>
现写一个C++程序,通过读取xml文件
BYTE on[11]={1B,。。。。};
BYTE down[11]={1B,。。。。};
求指点。。
------解决方案--------------------
------解决方案--------------------
CMarkUp xml;
xml.Load(strFileName);
xml.ResePos();
while(xml.FindChildElem())
{
//这里面就不知道了。
}
------解决方案--------------------
while(xml.FindChildElem(_T("ON")))
{
on[0] = (16进制转换函数) xml.GetAttrib("value1");
on[1] = (16进制转换代码) xml.GetAttrib("value2");
。。。
}
------解决方案--------------------
tinyxml , msxml, cmarkup 太多类库了
XML解析库-tinyxml,MSXML相关技术文章资料汇总
------解决方案--------------------
CMarkUp xml;
CString str;
xml.Load(strFileName);
xml.ResePos();
xml.FindElem(); //
xml.IntoElem();//进入Position
xml.FindElem(_T("P1")); //
xml.IntoElem();//进入P1
if(xml.FindElem(_T("ON")))
{
xml.IntoElem();
for(int i=0;i<11;i++)
{
str.Format(_T("value%d"),i+1);
on[i] = _ttoi(xml.GetAttrib(str));
}
xml.OutOfElem();
}
if(xml.FindElem(_T("DOWN")))
{
xml.IntoElem();
for(int i=0;i<11;i++)
{
str.Format(_T("value%d"),i+1);
down[i] = _ttoi(xml.GetAttrib(str));
}
xml.OutOfElem();
}
CMarkup,很好用的,楼主去看看教程。这段代码你试试