首页 新闻 赞助 找找看

XML取值问题

0
悬赏园豆:10 [已关闭问题]

<局 键="呼" 值="呼和浩特铁路局" 地址="">
        <段 键="呼段" 值="" 地址="">
            <所 键="呼所" 值="" 地址="">
                <列检 键="呼列检" 值="" 地址=""/>               
            </所>
            <所 键="呼所" 值="" 地址="">               
            </所>
        </段>       
</局>
问题:如何递归读出节点ID和它的父ID(ID和父ID是虚构的)
描述:如上XML节点共有四层
目的:最终能读出这样的数据 0,-1|1,0|2,1|3,1|4,1|5,3


 局
       
 段
 
     所1   所2
     列检1 列检2
对应

       0,-1
       1,0
     2,1   3,1
     4,2   5,3


 

SmartFramework@live.jp的主页 SmartFramework@live.jp | 初学一级 | 园豆:5
提问于:2010-03-16 09:08
< >
分享
其他回答(1)
0

用LINQ to XML

麒麟.NET | 园豆:3614 (老鸟四级) | 2010-03-16 10:38
0

你只要先用一个foreach 来得到所有节点的字符串〔由顶层到最底层〕如:-1,0,1,2,3,4,5

然后就是一个算法的事情了。你到得到 父级,子级 的形式。

1 string s = "1,2,3,4,5,6";
2
3 string res = "";
4
5 string[] list = s.Split(',');
6 for (int i = 1; i < list.Length; i++)
7 {
8 res += string.Format("{0},{1}|", list[i], list[i - 1]);
9 }
10  

 

邢少 | 园豆:10926 (专家六级) | 2010-03-23 11:22
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册