您的位置:首页 > 编程语言 > C#

C#读写XML

2016-01-04 12:36 330 查看
/*写xml*/
private static string XmlString()
{
MemoryStream stream = new MemoryStream();
XmlWriterSettings setting = new XmlWriterSettings();
setting.Encoding = new UTF8Encoding(true);
setting.Indent = true;
using (XmlWriter write = XmlWriter.Create(stream, setting))
{
write.WriteStartElement("Request");//创建节点
writer.WriteAttributeString("service", "CustomerWeight");//<Request service="CustomerWeight"//设置属性
writer.WriteAttributeString("lang", "zh-CN");
write.WriteElementString("Head", "ssss");//创建节点及赋值<Head>ssss</Head>
write.WriteStartElement("Body");//创建节点
write.WriteStartElement("Order");
write.WriteAttributeString("mailno", "sdfsf");//设置节点属性
write.WriteAttributeString("custid", "sdfsdf");
write.WriteAttributeString("cargo_total_weight", "sfsdfsdf");
write.WriteEndElement();//结束Order对应的节点
write.WriteEndElement();//结束Body对应的节点
write.WriteEndElement();//结束Request对应的节点
}
return Encoding.UTF8.GetString(stream.ToArray());
}




/*读xml*/
private static void ReadXml(string result)
{
XmlDocument documents = new XmlDocument();
documents.LoadXml(result);//加载xml数据
XmlNode xn = documents.SelectSingleNode("root");//获取到root节点
//XmlNode root = doc.DocumentElement;//这也可以获取到根节点
XmlNodeList xnls = xn.ChildNodes;//获取到root节点下的所有子节点
//string statusText = documents.GetElementInnerText("status");//获取到status节点文本值
for (int i = 0; i < xnls.Count; i++)//遍历root节点下的所有字节点
{
string zx_typeType = xnls[i].GetAttributeValue("zx_type");//获取到root字节点zx_type属性值
xnls[i].Attributes["zx_type"].Value //获取到root字节点zx_type属性值
string text = xnls[i].InnerText;//获取到root子节点文本值
}
}

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: