读取XML示例:C#获取XML的数据

读取XML示例:C#获取XML的数据
XML作为数据源来存储一些数据,那么如何获取XML中的数据呢?

XML文件代码如下:

1<?xml version="1.0" encoding="utf-8" ?>
 2<Tables>
 3  <Table Name="User_Info">
 4    <Field Name="User_ID">
 5      <Chinese>标识</Chinese>
 6      <English>ID</English>
 7      <Type>NUMBER(10)</Type>
 8      <CodeId></CodeId>
 9    </Field>
10    <Field Name="User_Name">
11      <Chinese>名称</Chinese>
12      <English>Name</English>
13      <Type>VARCHAR2(20)</Type>
14      <CodeId></CodeId>
15    </Field>
16  </Table>
17</Tables>

下面是.cs文件核心读取XML数据代码:

 1protected void Button1_Click(object sender, EventArgs e)
 2        {
 3            XmlDocument doc = new XmlDocument();
 4            doc.Load(Server.MapPath("Reres.xml"));
 5            XmlNodeList nodes1 = doc.GetElementsByTagName("Table");
 6            foreach (XmlNode node1 in nodes1)    //第一层
 7            {
 8                if (node1.Attributes["Name"].Value == "User_Info")
 9                {
10                    XmlNodeList nodes2 = node1.ChildNodes;
11                    foreach (XmlNode node2 in nodes2)//第二层nodes1
12                    {
13                        if (node2.Attributes["Name"].Value == "User_ID")
14                        {
15                            TextBox1.Text += node2["Chinese"].InnerText;
16                            TextBox2.Text += node2["English"].InnerText;
17                            TextBox3.Text += node2["Type"].InnerText;
18                        }
19                    }
20                }
21            }
22        }

这么简单就可以获取XML中的数据

 

 

=============================

写法二:

xml:

 

 

ContractedBlock.gif ExpandedBlockStart.gif Code
<?xml version="1.0" encoding="utf-8" ?>
<StarImages>
    
<starimage>
        
<speaker>猴子</speaker>
        
<content>摆脱</content>
        
<image>images/摆脱.gif</image>
    
</starimage>

    
<starimage>
        
<speaker>祥龙</speaker>
        
<content>爆发</content>
        
<image>images/爆发.gif</image>
    
</starimage>
    
</StarImages>

 

ContractedBlock.gif ExpandedBlockStart.gif Code
private List<StarImage> ReadXML()
ExpandedBlockStart.gifContractedBlock.gif    
{

        System.IO.FileInfo FileInfo 
= new System.IO.FileInfo(Server.MapPath("App_Data/XMLFile.xml"));
        List
<StarImage> listsi=new List<StarImage>();


        
if (FileInfo.Exists)
ExpandedSubBlockStart.gifContractedSubBlock.gif        

            System.Xml.XmlDocument xmlDocument 
= new System.Xml.XmlDocument();
            xmlDocument.Load(FileInfo.FullName);
            
foreach (System.Xml.XmlNode Node in xmlDocument["StarImages"])
ExpandedSubBlockStart.gifContractedSubBlock.gif            
{
                StarImage si 
= new StarImage();
                si.speaker 
= Node.ChildNodes[0].InnerText;
                si.content 
= Node.ChildNodes[1].InnerText;
                si.image 
= Node.ChildNodes[2].InnerText;
                listsi.Add(si);
            }


        }


        
return listsi;
    }


 

 

转载于:https://www.cnblogs.com/star250/archive/2009/11/26/1611407.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值