zoukankan      html  css  js  c++  java
  • #中string字符串转为json与json转对象

    添加引用,Newtonsoft.Json.dll
    using Newtonsoft.Json.Linq;

    //字符串转json
    public static void strJson()
    {
    string jsonText = "{"shenzheng":"深圳","beijing":"北京","shanghai":[{"zj1":"zj11","zj2":"zj22"},"zjs"]}";
    
    JObject jo = (JObject)JsonConvert.DeserializeObject(jsonText);//或者JObject jo = JObject.Parse(jsonText);
    string zone = jo["shenzheng"].ToString();//输出 "深圳"
    string zone_en = jo["shanghai"].ToString();//输出 "[{"zj1":"zj11","zj2":"zj22"},"zjs"]"
    string zj1 = jo["shanghai"][1].ToString();//输出 "zjs"
    Console.WriteLine(jo);
    }
    //对象与数组转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();
            productlist.GetProducts = 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 = Serializer.Deserialize<Obj>(JsonStr);
                Console.Write(obj.Name + ":" + obj.Price + "
    ");
    
            //json格式字符串
            string JsonStrs = "[{Name:'苹果',Price:5.5},{Name:'橘子',Price:2.5},{Name:'柿子',Price:16}]";
    
            JavaScriptSerializer Serializers = new JavaScriptSerializer();
    
            //json字符串转为数组对象, 反序列化
            List<Obj> objs = Serializers.Deserialize<List<Obj>>(JsonStrs);
    
            foreach (var item in objs)
            {
               Console.Write(item.Name + ":" + item.Price + "
    ");
            }
        }
  • 相关阅读:
    Visual C# 3.0 新特性概览
    一个C#睡前故事[翻译]
    ASP.NET User Control使用技巧一则
    Visual Studio 2005 调试器的新增功能
    .NET Framework 3.0新特性
    客户端提高WEB页面显示速度的方法
    VS.Net 2005中如何:使用“编辑并继续”
    如何在 VS 2005 里调试 Javascript
    关于DotNES
    Sql语句优化汇总(CSDN上的帖子)
  • 原文地址:https://www.cnblogs.com/wl-blog/p/13186461.html
Copyright © 2011-2022 走看看