【发布时间】:2017-05-21 03:00:19
【问题描述】:
我试图从 JSON 中获取 id 和电子邮件列表。我怎样才能做到这一点?
我的 JSON 字符串是
{
"name":"name1",
"username":"name1",
"id":505,
"state":"active",
"email":"name1@mail.com",
},
{
"name":"name2",
"username":"name2",
"id":504,
"state":"active",
"email":"name2@mail.com",
}
我的代码是
Dictionary<string, string> engineers = new Dictionary<string, string>();
using (StreamReader r = new StreamReader(@"D:\project\Gitlap\EngineerEmail\jsonlist5.json"))
{
using (JsonTextReader reader = new JsonTextReader(r))
{
JObject o2 = (JObject)JToken.ReadFrom(reader);
string id = o2["id"].ToString();
string email = o2["email"].ToString();
engineers.Add(email, id);
}
}
class UserItems
{
public string id { get; set; }
public string email { get; set; }
}
我可以得到第一个人的邮件 ID 和 ID 详细信息。我需要迭代这个 JSON 并获取所有的邮件 ID 和 ID。
我不知道如何迭代这个 JSON。我尝试了网上的一些方法,但没有成功。
我该怎么办?
【问题讨论】:
-
这不是一个真正的 JSON 对象,它是多个独立的 JSON 对象连接在一起。要使用 Json.NET 读取所有这些内容,请按照 Load multiple concatenated JSON objects from stream 中的说明设置
SupportMultipleContent = true。