C#获取xml指定节点的值(包括子节点)

 

1. 返回字符串sb(json格式)

关键代码如下,主要是xmlReader这玩意儿

XDocument xdom = null;
xdom = yourxdom;
StringBuilder sb = new StringBuilder();
XmlReaderSettings Settings = new XmlReaderSettings();
Settings.IgnoreWhitespace = true;
XmlReader Reader = XmlReader.Create(new StringReader(xdom.ToString()), Settings);
sb.Append("{");

sb.Append("\"yournodename\":");
sb.Append("[");
while (Reader.Read())
{
if (Reader.NodeType == XmlNodeType.Element && Reader.Name == "yournodename")
{
sb.Append("{");
sb.Append("\"col1\":\"" + Reader["col1"] + "\",");
sb.Append("\"col2\":\"" + Reader.Depth.For(" ") + Reader["col2"] + "\""); //这句很屌
sb.Append("},");
// sb.AppendFormat("<option value='{0}' {2}>{3}{1}</option>", Reader["col1"], Reader["col2"], !string.IsNullOrEmpty(col1Value) && col1Value == Reader["col1"] ? "selected='selected'" : "", Reader.Depth.For(" "));//全角空格占位符
}
}

posted @ 2014-04-03 15:46  sundy.yip  阅读(2521)  评论(0编辑  收藏  举报