csharp XmlTextReader read xml file
xml file:
<?xml version="1.0" encoding="utf-8"?>
<Root>
<UserInfo>
<Login Name="geovindu">
<Pass>l17pi6MYm2g=</Pass>
</Login>
<Login Name="涂聚文祝你龙年大悦http://www.dusystem.com/Happynewyear.html">
<Pass>4IGT6o/qA4vKYzlgizWsDg==</Pass>
</Login>
<Login Name="涂聚文">
<Pass>ULNR7dw9V7M=</Pass>
</Login>
</UserInfo>
</Root>
int ws = 0;
int pi = 0;
int dc = 0;
int cc = 0;
int ac = 0;
int et = 0;
int el = 0;
int xd = 0;
XmlDocument xmlConditions = new XmlDocument();
string url = Server.MapPath("User.xml");
XmlTextReader textReader = new XmlTextReader(url);
//textReader.WhitespaceHandling = WhitespaceHandling.None;
//xmlConditions.Load(textReader);
//XmlNode xnodDE = xmlConditions.DocumentElement;
//Response.Write(xnodDE.ChildNodes[0].ToString());
// string t=ChildDisplay(xnodDE, 0);
//Response.Write(t);
//textReader.Close();
string sName = "";
while (textReader.Read())
{
XmlNodeType nType = textReader.NodeType;
// If node type us a declaration
if (nType == XmlNodeType.XmlDeclaration)
{
Response.Write("Declaration:" + textReader.Name.ToString() + "<br/>");
xd = xd + 1;
}
// if node type is a comment
if (nType == XmlNodeType.Comment)
{
Response.Write("Comment:" + textReader.Name.ToString() + "<br/>");
cc = cc + 1;
}
// if node type us an attribute
if (nType == XmlNodeType.Attribute)
{
Response.Write("Attribute:" + textReader.Name.ToString() + "<br/");
ac = ac + 1;
}
// if node type is an element
if (nType == XmlNodeType.Element)
{
Response.Write("Element:" + textReader.Name.ToString() + "<br/>");
el = el + 1;
}
// if node type is an entity\
if (nType == XmlNodeType.Entity)
{
Response.Write("Entity:" + textReader.Name.ToString() + "<br/>");
et = et + 1;
}
// if node type is a Process Instruction
if (nType == XmlNodeType.Entity)
{
Response.Write("Entity:" + textReader.Name.ToString() + "<br/>");
pi = pi + 1;
}
// if node type a document
if (nType == XmlNodeType.DocumentType)
{
Response.Write("Document:" + textReader.Name.ToString() + "<br/>");
dc = dc + 1;
}
// if node type is white space
if (nType == XmlNodeType.Whitespace)
{
Response.Write("WhiteSpace:" + textReader.Name.ToString() + "<br/>");
//Response.Write("name:" + xmlConditions.Attributes["Name"].ToString());
//Response.Write("login:" + xmlConditions.GetElementsByTagName("Login").ToString());
ws = ws + 1;
}
switch (textReader.NodeType)
{
case XmlNodeType.Element:
sName = textReader.Name;
Response.Write("读取:Element:" + sName + "<br/>");
if (textReader.HasAttributes)
{
for (int i = 0; i <= textReader.AttributeCount - 1; i++)
Response.Write("屬性: " + textReader.GetAttribute(i) + " <br/>");
Response.Write("屬性Name: " + textReader.GetAttribute("Name") + " <br/>");
}
if (sName == "Login")
{
Response.Write("IF屬性Name: " + textReader.GetAttribute("Name") + " <br/>");
}
break;
case XmlNodeType.Text:
switch (sName)
{
case "Login":
Response.Write("Login:"+textReader.Value+"<br/>");
if (textReader.HasAttributes)
{
for (int i = 0; i <= textReader.AttributeCount - 1; i++)
Response.Write("屬性: " + textReader.GetAttribute(i) + " <br/>");
}
break;
case "Pass":
Response.Write("Pass:" + textReader.Value + "<br/>");
break;
case "UserInfo":
Response.Write("UserInfo:" + textReader.Value + "<br/>");
break;
}
break;
}
}
Response.Write("Total Comments:" + cc.ToString());
Response.Write("Total Attributes:" + ac.ToString());
Response.Write("Total Elements:" + el.ToString());
Response.Write("Total Entity:" + et.ToString());
Response.Write("Total Process Instructions:" + pi.ToString());
Response.Write("Total Declaration:" + xd.ToString());
Response.Write("Total DocumentType:" + dc.ToString());
Response.Write("Total WhiteSpaces:" + ws.ToString());
哲学管理(学)人生, 文学艺术生活, 自动(计算机学)物理(学)工作, 生物(学)化学逆境, 历史(学)测绘(学)时间, 经济(学)数学金钱(理财), 心理(学)医学情绪, 诗词美容情感, 美学建筑(学)家园, 解构建构(分析)整合学习, 智商情商(IQ、EQ)运筹(学)生存.---Geovin Du(涂聚文)
浙公网安备 33010602011771号