linux qt xml,QT如何读xml节点?如何获取节点属性?

QT如何读xml节点,如何获取节点属性?

这个实例讲了,QT中怎么去获取xml节点的value值,怎么去获取节点属性的值,并且还讲解了怎么直接读xml格式的内容,和怎么直接读xml文件。这个实例应该会帮助到大部分的初学者。

下面这段代码是获取xml节点,和获取节点属性。

//m_returnPostData 这个是xml格式的值,获取到的,QByteArray类型。

//dom.documentElement();//读取根节点

//docElem.firstChild();//读取第一个子节点

//e.tagName():获取节点名称

//e.text()获取节点value

//e.attribute ("en"):获取节点内属性为“en”的值

//nextSibling():获取下一个兄弟节点

QDomDocument dom;

//读取xml格式的值

dom.setContent(m_returnPostData);

//或者读取xml文件

QFile file("/usr/local/ui.xml");

if (!file.open(QIODevice::ReadOnly))

return;

if (!doc.setContent(&file))

{

file.close();

return;

}

file.close();

QDomElement docElem = dom.documentElement();

QDomNode n = docElem.firstChild();

while (!n.isNull())

{

QDomElement e = n.toElement();

if (!e.isNull())

{

hash.insert(qPrintable(e.tagName()), qPrintable(e.text()));

if( e.attribute ("en") != "")

{

QString nName = e.nodeName()+"_en";

hash.insert(qPrintable(nName), qPrintable(e.attribute ("en")));

}

}

n = n.nextSibling();

}

其他的一些函数:

lastChild():获得最后一个节点

childNodes():获取该节点的所有孩子节点的一个列表

previousSibling():获取前一个兄弟节点.

  • 0
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值