用C#,我有一个JISON串和值,现在怎么把值从这个JISON值中取出来呢?c# 反序列化 怎么样把值从JISON串中取出来呢?
var returnCitySN = {"cip": "125.66.194.200", "cid": "510400", "cname": "四川省攀枝花市"};
用Newtonsoft.Json反序列化就行,不想建立实体类,可以用匿名对象,示例如下
using System;
using Newtonsoft.Json;
namespace ConsoleApp3
{
class Program
{
static void Main(string[] args)
{
var returnCitySN = "{ \"cip\": \"125.66.194.200\", \"cid\": \"510400\", \"cname\": \"四川省攀枝花市\"}";
var obj = new { cip = string.Empty, cid = string.Empty, cname = string.Empty };
var o = JsonConvert.DeserializeAnonymousType(returnCitySN, obj);
Console.WriteLine(o.cip);
Console.WriteLine(o.cid);
Console.WriteLine(o.cname);
Console.ReadKey();
}
}
}
returnCitySN.cip
returnCitySN.cid
returnCitySN.cname
还是使用Newtonsoft.Json
来反序列化,示例如下:
using System;
using Newtonsoft.Json;
namespace ConsoleApp4
{
class Program
{
static void Main(string[] args)
{
var returnCitySN = "{\"cip\": \"125.66.194.200\", \"cid\": \"510400\", \"cname\": \"四川省攀枝花市\"}";
var city = JsonConvert.DeserializeObject<City>(returnCitySN);
Console.WriteLine(city.cid);
Console.WriteLine(city.cip);
Console.WriteLine(city.cname);
}
}
public class City
{
public string cip { get; set; }
public string cid { get; set; }
public string cname { get; set; }
}
}
运行结果:
510400
125.66.194.200
四川省攀枝花市
var obj = new { cip = "", cid = "", cname = "" };
var o = Newtonsoft.Json.JsonConvert.DeserializeObject<obj>(returnCitySN);
Console.WriteLine(o.cip);
Console.WriteLine(o.cid);
Console.WriteLine(o.cname);