gpt4 book ai didi

在.NET中使用Newtonsoft.Json转换,读取,写入的方法介绍

转载 作者:qq735679552 更新时间:2022-09-29 22:32:09 27 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章在.NET中使用Newtonsoft.Json转换,读取,写入的方法介绍由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

全局引用  using Newtonsoft.Json;  using Newtonsoft.Json.Converters;  //把Json字符串反序列化为对象  目标对象 = JavaScriptConvert.DeserializeObject(JSON字符串, typeof(目标对象));  //把目标对象序列化为Json字符串  stringJson字符串 = JavaScriptConvert.SerializeObject(目标对象);  1、引用Newtonsoft.Json.dll;  2、在项目中添加引用;  序列化和反序列在.net项目中,简单示例  。

复制代码代码如下

Productproduct = newProduct();  product.Name = "Apple";  product.Expiry = newDateTime(2008, 12, 28);  product.Price = 3.99M;  product.Sizes = newstring[] { "Small", "Medium", "Large"};  stringoutput = JavaScriptConvert.SerializeObject(product);  。

注意:  1、如果需要序列化实体  1、类名必须添加[DataContract]标记;  2、类属性添加[DataMember]标记;  2、如果有不需要序列化的字段,可以给该字段添加[JsonIgnore]标记  在Newtonsoft这个类库中对于日期的序列化有多种方式,可以类的DataTime成员添加上对应的标记,这样在进行序列化和反序列化时就会按照指定的方式进行,  在本例中User类(如下类)的CreateDate属性添加的属性是[JsonConverter(typeof(IsoDateTimeConverter))],而Birthday属性添加的属性是[JsonConverter(typeof(JavaScriptDateTimeConverter))],从序列化的结果可以看出来它们最终的表现形式并不一样。  。

复制代码代码如下

[DataContract]  public class User  {  /// <summary>  /// 编号  /// </summary>  [DataMember]  public int UserId { get; set; }  /// <summary>  /// 用户名  /// </summary>  [DataMember]  public string UserName { get; set; }  /// <summary>  /// 创建时间  /// </summary>  [DataMember]  [JsonConverter(typeof(IsoDateTimeConverter))]  public DateTime CreateDate { get; set; }  /// <summary>  /// 生日  /// </summary>  [DataMember]  [JsonConverter(typeof(JavaScriptDateTimeConverter))]  public DateTime Birthday { get; set; }  /// <summary>  /// 相关URL  /// </summary>  [DataMember]  public List<string> Urls { get; set; }  /// <summary>  /// 薪水  /// </summary>  [ScriptIgnore]//使用JavaScriptSerializer序列化时不序列化此字段  [IgnoreDataMember]//使用DataContractJsonSerializer序列化时不序列化此字段  [JsonIgnore]//使用JsonConvert序列化时不序列化此字段  public int Salary { get; set; }  /// <summary>  /// 权利级别  /// </summary>  [DataMember]  public Priority Priority { get; set; }  public User()  {  Urls = new List<string>();  }  }  。

其他:  Newtonsoft.Json.JsonConvert类是非微软提供的一个JSON序列化和反序列的开源免费的类库(下载网址是:http://www.codeplex.com/json/),它提供了更灵活的序列化和反序列化控制,并且如果你的开发环境使用的是.NET Framework3.5及以后版本的话,你就可以使用Linq to JSON,这样一来面对一大段的数据不必一一解析,你可以使用Linq to JSON解析出你关心的那部分即可,非常方便。  。

参考:

http://www.cnblogs.com/gghxh/archive/2008/01/11/1035482.html http://blog.csdn.net/zhoufoxcn/article/details/6254657 。

最后此篇关于在.NET中使用Newtonsoft.Json转换,读取,写入的方法介绍的文章就讲到这里了,如果你想了解更多关于在.NET中使用Newtonsoft.Json转换,读取,写入的方法介绍的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com