开发者社区> 问答> 正文

C# 求这个通过Newtonsoft.Json解析json

screenshot
screenshot
screenshot
screenshot
screenshot
C# 求这个通过Newtonsoft.Json解析json

展开
收起
杨冬芳 2016-07-12 17:53:49 3705 0
1 条回答
写回答
取消 提交回答
  • IT从业

    参考链接

    http://www.cnblogs.com/sbxwylt/archive/2008/12/31/1366199.html

    Newtonsoft.Json序列化和反序列
    这里下载:http://www.newtonsoft.com/products/json/
    安装:
    1.解压下载文件,得到Newtonsoft.Json.dll
    2.在项目中添加引用..
    序列化和反序列在.net项目中:
    
    Product product = new Product();
    
    product.Name = "Apple";
    product.Expiry = new DateTime(2008, 12, 28);
    product.Price = 3.99M;
    product.Sizes = new string[] { "Small", "Medium", "Large" };
    
    string output = javascriptConvert.SerializeObject(product);
    //{
    // "Name": "Apple",
    // "Expiry": new Date(1230422400000),
    // "Price": 3.99,
    // "Sizes": [
    // "Small",
    // "Medium",
    // "Large"
    // ]
    //}
    
    Product deserializedProduct = (Product)javascriptConvert.DeserializeObject(output, typeof(Product));
    
    读取JSON
    
    string jsonText = "['JSON!',1,true,{property:'value'}]";
    
    JsonReader reader = new JsonReader(new StringReader(jsonText));
    
    Console.WriteLine("TokenType\t\tValueType\t\tValue");
    
    while (reader.Read())
    {
    Console.WriteLine(reader.TokenType + "\t\t" + WriteValue(reader.ValueType) + "\t\t" + WriteValue(reader.Value))
    }
    
    结果显示:
    TokenType ValueType Value
    StartArray null null
    String System.String JSON!
    Integer System.Int32 1
    Boolean System.Boolean True
    StartObject null null
    PropertyName System.String property
    String System.String value
    EndObject null null
    EndArray null null
    JSON写入
    
    StringWriter sw = new StringWriter();
    JsonWriter writer = new JsonWriter(sw);
    
    writer.WriteStartArray();
    writer.WriteValue("JSON!");
    writer.WriteValue(1);
    writer.WriteValue(true);
    writer.WriteStartObject();
    writer.WritePropertyName("property");
    writer.WriteValue("value");
    writer.WriteEndObject();
    writer.WriteEndArray();
    
    writer.Flush();
    
    string jsonText = sw.GetStringBuilder().ToString();
    
    Console.WriteLine(jsonText);
    // ['JSON!',1,true,{property:'value'}]
    
    这里会打印出: ['JSON!',1,true,{property:'value'}].
    
    2019-07-17 19:55:20
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
神龙云服务器产品及技术深度解析 立即下载
弹性创造价值:基于ECS的最佳性价比实践解析 立即下载
又快又稳:阿里云下一代虚拟交换机解析 立即下载

相关镜像