怎么循环输出json里的信息?

yiyuan798 2012-09-19 04:34:29
{"trade_fullinfo_get_response":{"trade":{"buyer":"abc","payment":"169.00","nick":"test专营店","tid":123}}}
{"trade_fullinfo_get_response":{"trade":{"buyer":"abdc","payment":"1629.00","nick":"tes1t专营店","tid":1243}}}
{"trade_fullinfo_get_response":{"trade":{"buyer":"abec","payment":"1639.00","nick":"tes2t专营店","tid":1523}}}
{"trade_fullinfo_get_response":{"trade":{"buyer":"abfc","payment":"1649.00","nick":"tes3t专营店","tid":1623}}}

这样的一串json

在asp.net 里 ,怎么样才能得到 buyer里的信息?也就是 abc,abdc,abec,abfc
...全文
276 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
白云任去留 2012-09-20
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 的回复:]

我试了,只能对
[{"trade_fullinfo_get_response":{"trade":{"buyer":"abc","payment":"169.00","nick":"test专营店","tid":123}}},[{"trade_fullinfo_get_response":{"trade":{"buyer":"abc","payment":"169.00","nick":"te……
[/Quote]

你根据是列表还是单个酌情处理啊~
zytp 2012-09-20
  • 打赏
  • 举报
回复
使用LitJSON是一个.NET平台下处理JSON格式数据的类库,小巧、快速。它的源代码使用C#编写,可以通过任何.Net平台上的语言进行调用

下面是例子
String str = "{’name’:’cyf’,’id’:10,’items’:[{’itemid’:1001,’itemname’:’hello’},{’itemid’:1002,’itemname’:’hello2’}]}";
//*** 读取JSON字符串中的数据 *******************************
JsonData jd = JsonMapper.ToObject(str);
String name = (String)jd["name"];
long id = (long)jd["id"];
JsonData jdItems = jd["items"];
int itemCnt = jdItems.Count;
// 数组 items 中项的数量
foreach (JsonData item in jdItems)
// 遍历数组 items
{int itemID = (int)item["itemid"];
String itemName = (String)item["itemname"];
}

//*** 将JsonData转换为JSON字符串 ***************************
诺维斯基 2012-09-20
  • 打赏
  • 举报
回复
正则:Regex reg=new Regex(@"""buyer"":""([^""]+?)""");

循环获取Groups[1].value
haojuntu 2012-09-20
  • 打赏
  • 举报
回复
给你写个例子,你需要下载第三方引用Newtonsoft.Json.Net35.dll文件,去下载一个就可以,然后引用


private void button2_Click(object sender, EventArgs e)
{
Trade t = new Trade();
t.buyer = "abdc";
t.payment = "1629.00";
t.nick = "tes1t专营店";
t.tid = 1243;
Trade_Model t_m = new Trade_Model();
t_m.trade = t;
Model m = new Model();
m.trade_fullinfo_get_response = t_m;
//序列化
string s = MyJson.SerializeObject(m);
//反序列化
Model model = MyJson.Deserialize<Model>(s);
textBox1.Text = s;

}

public class MyJson
{

/// <summary>
/// 序列化方法
/// </summary>
/// <param name="obj"></param>
/// <returns></returns>
public static string SerializeObject(object obj)
{
return JsonConvert.SerializeObject(obj);
}
/// <summary>
/// 反序列化方法
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="value"></param>
/// <returns></returns>
public static T Deserialize<T>(string value)
{
try
{
return JsonConvert.DeserializeObject<T>(value);
}
catch
{
return default(T);
}
}
}
public class Model
{
public Trade_Model trade_fullinfo_get_response { get; set; }
}
public class Trade_Model
{
public Trade trade { get; set; }
}

public class Trade
{
public string buyer { get; set; }
public string payment { get; set; }
public string nick { get; set; }
public int tid { get; set; }
}
yiyuan798 2012-09-19
  • 打赏
  • 举报
回复
我试了,只能对
[{"trade_fullinfo_get_response":{"trade":{"buyer":"abc","payment":"169.00","nick":"test专营店","tid":123}}},[{"trade_fullinfo_get_response":{"trade":{"buyer":"abc","payment":"169.00","nick":"test专营店","tid":123}}}]这样的读取,不能读取上面的

{"trade_fullinfo_get_response":{"trade":{"buyer":"abc","payment":"169.00","nick":"test专营店","tid":123}}}
{"trade_fullinfo_get_response":{"trade":{"buyer":"abdc","payment":"1629.00","nick":"tes1t专营店","tid":1243}}}
{"trade_fullinfo_get_response":{"trade":{"buyer":"abec","payment":"1639.00","nick":"tes2t专营店","tid":1523}}}
{"trade_fullinfo_get_response":{"trade":{"buyer":"abfc","payment":"1649.00","nick":"tes3t专营店","tid":1623}}}

说是格式不对
白云任去留 2012-09-19
  • 打赏
  • 举报
回复

public class Model
{
public PayModel trade_fullinfo_get_response { get;set; }
}

public class PayModel
{
public Entity trade { get;set; }
}

public class Entity
{
public string buyer { get;set; }
public string payment { get;set; }
public string nick { get;set; }
public string tid { get;set; }
}

List<Model> list = Json反序列化对象;
//通过相关类读取list即可
yiyuan798 2012-09-19
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]
反序列化为Ilist<> 再循环获取。
[/Quote]能说说具体怎么弄吗
天下如山 2012-09-19
  • 打赏
  • 举报
回复
反序列化为Ilist<> 再循环获取。

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧