2010-01-11 06:31

在asp.net中读取XML文件信息的4种方法(转)

方法一 :使用XML控件
    <% @ Page Language="C#"%>
<html>
<body> 
       <h3><font face="Verdana">读取XML方法一</font></h3>
       <from runat=server>
        <asp:Xml id="xml1" DocumentSource="grade.xml" runat="server" />
      </from>
</body>
</html>
方法二: 使用DOM技术
<% @ Page Language="C#"%>
<% @ Import Namespace="System.Xml"%>
<% @ Import Namespace="System.Xml.Xsl"%>
  <html>
<script language="C#" runat="server">
void Page_Load(Object sender,EventArgs e)
{
   XmlDocument doc=new XmlDocument();
  doc.Load(Server.MapPath("grade.xml"));
xml1.Document=doc;
}
</script>
<body>
   <h3><font face="Verdana">读取XML方法二</font></h3>
       <from runat=server>
        <asp:Xml id="xml1"  runat="server" />
      </from>
</body>
</html>
方法三 :使用DataSet对象
<% @ Page Language="C#"%>
<% @ Import Namespace="System.Data"%>
<% @ Import Namespace="System.Data.OleDb"%>
<script language="C#" runat="server">
void Page_Load(Object sender,EventArgs e)
{
DataSet  objDataSet=new DataSet();
  objDataSet.ReadXml(Server.MapPath("grade.xml"));
dgEmployees.DataSource=objDataSet.Tables["student"].DefaultView;
dgEmployees.DataBind();
}
</script>
<body>
   <h3><font face="Verdana">读取XML方法三</font></h3>
<asp:DataGrid id="dgEmployees" runat="server" />
</body>
</html>
方法四 :按文本方式读取
<% @ Page Language="C#"%>
<% @ Import Namespace="System.Xml"%>
  <html>
<script language="C#" runat="server">
private void Page_Load(Object sender,EventArgs e)
{
XmlTextReader objXMLReader=new XmlTextReader(Server.MapPath("grade.xml"));
string strNodeResult="";
XmlNodeType objNodeType;
while(objXMLReader.Read())
{
objNodeType =objXMLReader.NodeType;
swith(objNodeType)
   {
   case XmlNodeType.XmlDeclaration:
   //读取XML文件头
      strNodeResult+="XML Declaration:<b>"+objXMLReader.Name+""+objXMLReader.Value+"</b><br/>";
     break;
   case XmlNodeType.Element:
  //读取标签
     strNodeResult+="Element:<b>"+objXMLReader.Name+"</b><br/>";
    break;
   case XmlNodeType.Text:
     //读取值
    strNodeResult+="&nbsp;-Value:<b>"+objXMLReader.Value+"</b><br/>";
   break;
   }
//判断该节点是否有属性
if(objXMLReader.AttributeCount>0)
  {  //用循环判断完所有节点
    while(objXMLReader.MoveToNextAttibute)
     { //取标签和值
     strNodeResult+="&nbsp;-Attribute:<b>"+objXMLReader.Name+"</b>&nbsp;value:<b>"+objXMLReader.Value+"</b><br/>";
      }
   }
LblFile.Text=strNodeResult;
}
}
</script>
<body>
   <h3><font face="Verdana">读取XML方法四</font></h3>
       <from runat=server>
        <asp:label id="LblFile"  runat="server" />
      </from>
</body>
</html>

添加新评论