c#中字符串转为json对象与json转对象

时间:2025-03-18 22:15:10
using ; using ; using ; using ; //使用JavaScriptSerializer()方式转json,需要添加最低的frameword3.5版本才有该dll //使用JsonConvert方式需要;引用,frameword2.0也可以用 //字符串转json public static void strJson() { string jsonText = "{\"shenzheng\":\"深圳\",\"beijing\":\"北京\",\"shanghai\":[{\"zj1\":\"zj11\",\"zj2\":\"zj22\"},\"zjs\"]}"; //转为json对象 JObject jo = (JObject)(jsonText); string zone = jo["shenzheng"].ToString();//输出 深圳 string zone_en = jo["shanghai"].ToString();//"[\r\n {\r\n \"zj1\": \"zj11\",\r\n \"zj2\": \"zj22\"\r\n },\r\n \"zjs\"\r\n]" string zj1 = jo["shanghai"][1].ToString();//"zjs" (jo); } //JsonConvert方式的集合转json string jo =(ListUserInfoModel); //对象与数组转JSON public static void GetJsonString() { //初始化对象 Obj product = new Obj() { Name = "苹果", Price = 5.5 }; //序列化 string o = new JavaScriptSerializer().Serialize(product);//值:"{\"Name\":\"苹果\",\"Price\":5.5}" //数组转json List<Obj> products = new List<Obj>(){ new Obj(){Name="苹果",Price=5.5}, new Obj(){Name="橘子",Price=2.5}, new Obj(){Name="干柿子",Price=16.00} }; ProductList productlist = new ProductList(); = products; //序列化 string os = new JavaScriptSerializer().Serialize(productlist); //输出 "{\"GetProducts\":[{\"Name\":\"苹果\",\"Price\":5.5},{\"Name\":\"橘子\",\"Price\":2.5},{\"Name\":\"干柿子\",\"Price\":16}]}" } //json转对象、数组, 反序列化 public static void JSONStringToList() { //json格式字符串 string JsonStr = "{Name:'苹果',Price:5.5}"; JavaScriptSerializer Serializer = new JavaScriptSerializer(); //json字符串转为对象, 反序列化 Obj obj = <Obj>(JsonStr); ( + ":" + + "\r\n"); //json格式字符串 string JsonStrs = "[{Name:'苹果',Price:5.5},{Name:'橘子',Price:2.5},{Name:'柿子',Price:16}]"; JavaScriptSerializer Serializers = new JavaScriptSerializer(); //json字符串转为数组对象, 反序列化 List<Obj> objs = <List<Obj>>(JsonStrs); foreach (var item in objs) { ( + ":" + + "\r\n"); } }