首页
社区
课程
招聘
[求助]如何将下面的xml文件保存到一个结构体中
发表于: 2012-10-15 14:06 3573

[求助]如何将下面的xml文件保存到一个结构体中

2012-10-15 14:06
3573
<ProcessInfo xxx="AAAA">
<FileInfo>
XXX.EXE
XXX.DLL
...
</FileInfo>
</ProcessInfo>
..
<ProcessInfo xxx="BBBB">
<FileInfo>
yyy.EXE
12.TXT
AA.SYS
..
</FileInfo>
</ProcessInfo>

我想把上面的xml保存为一个结构体,ProcessInfo有N个节点,里面的FileInfo也有N个节点
我的想法是把ProcessInfo作为一个deque,里面的FileInfo也作为一个deque,那么这样就会出现一个deque结构体里面嵌套了一个deque类型的元素,因为这个deque类型的元素大小不一定,我不知道如何malloc,或者还有什么其它的方法保存这种xml结构?,多谢~~

用tinyxml读取xml我会的,我的问题是如何保存到一个结构体中,这样查询就会方便很多

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (1)
雪    币: 291
活跃值: (213)
能力值: ( LV12,RANK:210 )
在线值:
发帖
回帖
粉丝
2
1. deque自动管理内存,何来malloc
2. xml天然就是树,如果要实现通用的树结构,可以这样:
struct STreeNode {
    std::string key;
    std::vector<STreeNode> subNode;
};
或进一步泛型处理:
template <typename GKey>
struct STreeNode {
    GKey key;
    std::vector<STreeNode> subNode;
};
由于deque不能使用非完整类型,所以这里换成可以使用不完整类型的vector

3. 特殊问题有特殊的解决方案。对于你这个,这样即可:
struct SProcessInfo {
    std::string processName;
    std::deque<std::string> fileInfo;
};
2012-10-15 15:52
0
游客
登录 | 注册 方可回帖
返回
//