xml文档有写入,当然就有读取了,在这里还是简单介绍一个读取的方法,就是利用XMLTextReader读取xml文档。
XmlReader是一种快速、无缓冲,向前并只读的游标,用于读取xml文档,并且隐藏了底层数据交换的复杂性,XMLReader最主要的一个就是他更易使用,其次性能更高,难度更低。
1 public string ReadXml(string path) 2 { 3 //由于要进行大量的字符串的拼接,所以先创建StringBuilder对象 4 StringBuilder sb = new StringBuilder(); 5 //首先创建一个XMLTextReader对象,并传入目标文件的地址 6 using (XmlTextReader reader = new XmlTextReader(path)) 7 { 8 9 while (reader.Read())//调用Read方法 10 { 11 switch (reader.NodeType) 12 { 13 case XmlNodeType.Element: 14 sb.Append("Element:<b>").Append(reader.Name).Append("</b></br>"); 15 break; 16 case XmlNodeType.Text: 17 sb.Append("Value:<b>").Append(reader.Value).Append("</b></br>"); 18 break; 19 case XmlNodeType.XmlDeclaration: 20 sb.Append("Xml Declaration:<b>").Append(reader.Value).Append("</b></br>"); 21 break; 22 } 23 if (reader.AttributeCount > 0) 24 { 25 while (reader.MoveToNextAttribute()) 26 { 27 sb.Append("--Attribute:<b>").Append(reader.Name).Append("</b>").Append("value:<b>").Append(reader.Value).Append("</b></br>"); 28 } 29 } 30 } 31 } 32 return sb.ToString(); 33 34 35 36 37 }
调用上面的方法得到的结果:
Xml Declaration:version="1.0" --Attribute:versionvalue:1.0 Element:Students Element:Student --Attribute:Classvalue:5年级 Element:name Value:张三 Element:sex Value:男 Element:height Value:183cm Element:Student --Attribute:Classvalue:4年级 Element:name Value:李四 Element:sex Value:女 Element:height Value:176cm
时间: 2024-12-25 17:08:16