gpt4 book ai didi

c# - 从 Json 字符串中提取数据

转载 作者:可可西里 更新时间:2023-11-01 07:49:20 25 4
gpt4 key购买 nike

我得到了一个包含 Json 的字符串。它看起来像这样:

"status_code":200,
"status_txt":"OK",
"data":
{
"img_name":"D9Y3z.png",
"img_url":"http:\/\/s1.uploads.im\/D9Y3z.png",
"img_view":"http:\/\/uploads.im\/D9Y3z.png",
"img_width":"167",
"img_height":"288",
"img_attr":"width=\"167\" height=\"288\"",
"img_size":"36.1 KB",
"img_bytes":36981,
"thumb_url":"http:\/\/s1.uploads.im\/t\/D9Y3z.png",
"thumb_width":360,
"thumb_height":360,
"source":"http:\/\/www.google.com\/images\/srpr\/nav_logo66.png",
"resized":"0",
"delete_key":"df149b075ab68c38"
}

我正在尝试获取“img_url”。我安装了 Json.NET,我在这里发现了类似的问题。

例如这样的事情:

JObject o = JObject.Parse("{'People':[{'Name':'Jeff'},{'Name':'Joe'}]}");

// get name token of first person and convert to a string
string name = (string)o.SelectToken("People[0].Name");

在我的例子中,我将 ("People[0].Name") 更改为 ("img_url"),("img_url[0]) 等..没有运气

现在这是我的代码:

public string tempJson { get; set; }
public ActionResult SaveUploadedFile(string test)
{
using (WebResponse wrs = wrq.GetResponse())
using (Stream stream = wrs.GetResponseStream())
using (StreamReader reader = new StreamReader(stream))
{
string json = reader.ReadToEnd();
tempJson = json;
}
}

在提取值之前,我是否必须对字符串执行某些操作?谢谢!

最佳答案

img_url 不是根对象的属性 - 它是 data 对象的属性:

var obj = JObject.Parse(json);
var url = (string)obj["data"]["img_url"]; // http://s1.uploads.im/D9Y3z.png

另一种选择:

var url = (string)obj.SelectToken("data.img_url");

关于c# - 从 Json 字符串中提取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24233104/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com