给梦一个奔跑的方向!
PDF Print E-mail
User Rating: / 0
PoorBest 
Written by xlingfairy
Monday, 28 June 2010 14:37
原来有个 feed 用的是 json 格式的,我直接用 正则表达式来取它的数据.最近这个 feed 做了一些调整,正则表达式失效,取不出数据来.每次改正则表达式也不是个办法,最好能有办法解析这个 json .
 
关于如何解析 json ,网上有很多种解决办法,我用的是 JsonReaderWriterFactory.CreateJsonReader 方法,下面是示例:
 
...
...
using System.Xml;
using System.Runtime.Serialization;
using System.Runtime.Serialization.Json;
...
...
string ctx = HttpRequest.GetCtx(this.FeedUrl, "GET", Encoding.UTF8);//这里取出 feed 的内容, Json 源数据
XmlDocument dom = new XmlDocument();
XmlDictionaryReader xmlReader = JsonReaderWriterFactory.CreateJsonReader(Encoding.UTF8.GetBytes(ctx), XmlDictionaryReaderQuotas.Max);
xmlReader.Read();
String XMLString = xmlReader.ReadOuterXml();
dom.LoadXml(XMLString);
 
DailyDealsProduct p = new DailyDealsProduct();
 
XmlNode node = dom.SelectSingleNode("/root/rr_price");
if (node != null) {
    decimal price;
    decimal.TryParse(node.InnerText, out price);
    p.OrgPrice = price;
}
...
...
 
注意,需要添加 System.ServiceModel.Web 的引用.
 

Add comment


Security code
Refresh

Popular Contents

Recommend

Site Info

Members : 1
Content : 140
Web Links : 7
Content View Hits : 111320

Links