在C#中解析JSON我试图解析GoogleAjaxSearchAPI中的一些JSON数据。我有过这个URL我想把它分解,以便显示结果。我目前已经编写了这段代码,但是对于下一步要做什么,我非常困惑,尽管有许多使用简化JSON字符串的示例。作为C#和.NET的新手,我一直在努力为我的ASP.NET页面获得真正的文本输出,因此建议我尝试一下JSON.NET。有人能指出正确的方向吗?只需编写一些从GoogleAjaxSearchAPI中获取JSON并将其打印到屏幕上的代码即可。编辑:都修好了!所有结果都很好。再次感谢Dreas Grech! protected void Page_Load(object sender, EventArgs e)
{
GoogleSearchResults g1 = new GoogleSearchResults();
g1 = JSONHelper.Deserialise<GoogleSearchResults>(json);
Response.Write(g1.content);
}}public class JSONHelper{
public static T Deserialise<T>(string json)
{
T obj = Activator.CreateInstance<T>();
MemoryStream ms = new MemoryStream(Encoding.Unicode.GetBytes(json));
DataContractJsonSerializer serialiser = new DataContractJsonSerializer(obj.GetType());
ms.Close();
return obj;
}}/// Deserialise from JSON[Serializable]public class GoogleSearchResults{
public GoogleSearchResults() { }
public GoogleSearchResults(string _unescapedUrl, string _url, string _visibleUrl, string _cacheUrl, string _title, string
_titleNoFormatting, string _content)
{
this.unescapedUrl = _unescapedUrl;
this.url = _url;
this.visibleUrl = _visibleUrl;
this.cacheUrl = _cacheUrl;
this.title = _title;
this.titleNoFormatting = _titleNoFormatting;
this.content = _content;
}
string _unescapedUrl;
string _url;
string _visibleUrl;
string _cacheUrl;
string _title;
string _titleNoFormatting;
string _content;
[DataMember]
public string unescapedUrl {
get { return _unescapedUrl; }
set { _unescapedUrl = value; }
}
[DataMember]
public string url {
get { return _url; }
set { _url = value; }
}该代码目前编译和运行完美,但没有返回任何结果。有人能帮我把我需要的东西还回去吗?结果可以打印到屏幕上吗?编辑:Json.NET使用与上面示例相同的JSON和类工作。GoogleSearchResults g1 = JsonConvert.DeserializeObject<GoogleSearchResults>(json);链接:用Json.NET序列化和反序列化JSON相关C#-将json格式的数据解析为嵌套的哈希表解析JSON数组
3 回答
- 3 回答
- 0 关注
- 2075 浏览
添加回答
举报
0/150
提交
取消