• 4786阅读
  • 3回复

Qt 写Xml 文件时标签的属性的顺序问题 [复制链接]

上一主题 下一主题
离线peirenjun
 
只看楼主 正序阅读 楼主  发表于: 2009-06-23
— 本帖被 XChinux 从 General Qt Programming 移动到本区(2011-01-02) —
在Qt中写xml文件时,给一个结点标签添加属性时

QDomDocument doc;
QDomProcessingInstruction instruction;

instruction = doc.createProcessingInstruction("xml","version=\"1.0\" encoding=\"UTF-8\"");
doc.appendChild(instruction);

QDomElement root = doc.createElement("person");
doc.appendChild(root);

QDomElement kgl_input = doc.createElement("io");
root.appendChild(kgl_input);

QDomAttr name = doc.createAttribute("name");
QDomAttr type = doc.createAttribute("type");
name.setValue(tr("zhangsan"));
type.setValue(tr("90"));
kgl_input.setAttributeNode(name);
kgl_input.setAttributeNode(type);

QTextStream out(&file);
out.setCodec("UTF-8");
doc.save(out,4,QDomNode::EncodingFromTextStream);

执行后
<person>
<io type="90" name="zhangsan" >
</person>


如何可控制 name 属性与 type 属性的前后顺序?
如果我想让某个属性在某个顺序,或是让 name 属性在 type 属性的前面,应该如何做?
更换下面两句话的前后位置并不能达到效果
kgl_input.setAttributeNode(name);
kgl_input.setAttributeNode(type);
[ 此帖被peirenjun在2009-06-24 15:56重新编辑 ]
离线peirenjun
只看该作者 3楼 发表于: 2009-06-25
自己顶
离线peirenjun
只看该作者 2楼 发表于: 2009-06-25
自己顶
离线bingogo
只看该作者 1楼 发表于: 2009-06-23
看了半天,没看懂你在问什么……
快速回复
限100 字节
 
上一个 下一个