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 += " -Value:<b> " + objXMLReader.Value + " </b><br/> " ;
break ;
}
// 判断该节点是否有属性
if (objXMLReader.AttributeCount > 0 )
{ // 用循环判断完所有节点
while (objXMLReader.MoveToNextAttibute)
{ // 取标签和值
strNodeResult += " -Attribute:<b> " + objXMLReader.Name + " </b> 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 >
<% @ 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 += " -Value:<b> " + objXMLReader.Value + " </b><br/> " ;
break ;
}
// 判断该节点是否有属性
if (objXMLReader.AttributeCount > 0 )
{ // 用循环判断完所有节点
while (objXMLReader.MoveToNextAttibute)
{ // 取标签和值
strNodeResult += " -Attribute:<b> " + objXMLReader.Name + " </b> 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 >