c# 在.NET使用Newtonsoft.Json转换,读取,写入json

转自:http://blog.sina.com.cn/s/blog_70686f3a0101kemg.html

首先,大家要明白什么是json,了解更多关于json方面资料大家可以点击https://www.ibm.com/developerworks/cn/web/wa-lo-json/ ,我在这里简单介绍下json:

JSON 即 JavaScript Object Natation,它是一种轻量级的数据交换格式,非常适合于服务器与 JavaScript 的交互。和 XML 一样,JSON 也是基于纯文本的数据格式。由于 JSON 天生是为 JavaScript 准备的,因此,JSON 的数据格式非常简单,您可以用 JSON 传输一个简单的 String,Number,Boolean,也可以传输一个数组,或者一个复杂的 Object 对象。

在.NET环境下面,我们使用Json.net来实现JSON数据的序列化和反序列化。

首先点击连接http://sourceforge.net/projects/csjson/?source=dlp 下载JSON .NET插件和代码。

然后在项目中进行引用Newtonsoft.Json.dll

添加命名空间:using Newtonsoft.Json;

下面介绍json序列化和反序列化的放个重要方法和例子:

JsonConvert.SerializeObject(object value)序列化,它有个重载方法JsonConvert.SerializeObject(object value, params JsonConverter[] converters)。
JsonConvert.DeserializeObject(string value, Type type),反序列化,它有个重载方法JsonConvert.DeserializeObject(string value, Type type, params JsonConverter[]
converters)

这两个方法可以实现基本的序列化和反序列化要求,请看下面的例子:

首先我们先建一个Person类代码如下:

public class Person

{

private string name;

public string Name

{

get { return name; }

set { name = value; }

}

private int age;

public int Age

{

get { return age; }

set { age = value; }

}

}

1)序列化

using System;

using System.Collections.Generic;

using System.Linq;

using System.Web;

using System.Web.UI;

using System.Web.UI.WebControls;

using Newtonsoft.Json;

namespace JSONnet

{

public partial class test : System.Web.UI.Page

{

protected void Page_Load(object sender, EventArgs e)

{

Person person = new Person();

person.Name = "GoldenEasy";

person.Age = 25;

string strSerializeJSON = JsonConvert.SerializeObject(person);

Response.Write(strSerializeJSON);

}

}

}

输出结果:

{"Name":"GoldenEasy","Age":25}

2)反序列化

using System;

using System.Collections.Generic;

using System.Linq;

using System.Web;

using System.Web.UI;

using System.Web.UI.WebControls;

using Newtonsoft.Json;

namespace JSONnet

{

public partial class test : System.Web.UI.Page

{

protected void Page_Load(object sender, EventArgs e)

{

Person person = new Person();

person.Name = "GoldenEasy";

person.Age = 25;

string strSerializeJSON = JsonConvert.SerializeObject(person);

Person user = (Person)JsonConvert.DeserializeObject(strSerializeJSON, typeof(Person));

Response.Write(user.Name);

}

}

}

输出结果为:GoldenEasy

原文地址:https://www.cnblogs.com/cyqdeshenluo/p/9253621.html

时间: 2024-08-03 21:20:56

c# 在.NET使用Newtonsoft.Json转换,读取,写入json的相关文章

在.NET使用Newtonsoft.Json转换,读取,写入json

首先,大家要明白什么是json,了解更多关于json方面资料大家可以点击https://www.ibm.com/developerworks/cn/web/wa-lo-json/ ,我在这里简单介绍下json: JSON 即 JavaScript Object Natation,它是一种轻量级的数据交换格式,非常适合于服务器与 JavaScript 的交互.和 XML 一样,JSON 也是基于纯文本的数据格式.由于 JSON 天生是为 JavaScript 准备的,因此,JSON 的数据格式非常

Asp.Net中使用Newtonsoft.Json转换,读取,写入

using Newtonsoft.Json; using Newtonsoft.Json.Converters; //把Json字符串反序列化为对象 目标对象 = JsonConvert.DeserializeObject(JSON字符串, typeof(目标对象)); //把目标对象序列化为Json字符串 string Json字符串 = JsonConvert.SerializeObject(目标对象); 1.引用Newtonsoft.Json.dll 2.在项目中添加引用.. 序列化和反序

javaScript 中创建json/转换字符串为json

在js 中创建创建json 对象: 1.直接定义json 对象 var employees = [ { "firstName":"Bill" , "lastName":"Gates" }, { "firstName":"George" , "lastName":"Bush" }, { "firstName":"Thom

C++简单使用Jsoncpp来读取写入json文件

一.源码编译 C++操作json字符串最好的库应该就是jsoncpp了,开源并且跨平台.它可以从这里下载. 下载后将其解压到任意目录,它默认提供VS2003和VS2010的工程文件,使用VS2010可以直接打开makefiles\msvc2010目录下的sln文件. 工程文件提供Jsoncpp的win32和win64静态库生成.点击生成--批生成选择需要生成的配置后即可生成jsoncpp静态库.生成的文件在makefiles\msvc2010\(x64\)Debug(Release)\目录下.

配置文件通过读取json方式读取

json文件 { "mysql":{ "hosts":"localhost", "user":"root", "password":"admin", "port":3306, "dbname":"jfg", "chart":"utf-8" }, "redis&

比Newtonsoft.Json轻量快速简洁的实体JSON转换库YeaJur.Mapper

在使用MVC的时候,我们经常用到Newtonsoft.Json来进行实体和JSON 之间的转换,但是有时候,有些实体Newtonsoft.Json转换会出现异常.YeaJur.Mapper正是为了解决这些问题而来,并比Newtonsoft.Json轻量,转换速度快,使用简洁,测试结果如下 PK项 YeaJur.Mapper Newtonsoft.Json 版本 1.0 9.0.1 大小 6KB 514KB 实例(json格式) [ { "Products": [ { "Id&

Newtonsoft.Json 转换DateTime类型为字符串时,串内部会有一个T。解决方案

使用Newtonsoft.Json 转换DateTime类型时,若使用标准转换,则字符串内会有一个T(虽然再转换成DateTime没有问题). 若要转换成DateTime没有T,可以加上特性: 1 public class TestClass 2 { 3 public TestClass() 4 { 5 Dt1 = Dt2 = new DateTime(1900, 1, 1, 0, 0, 0); 6 } 7 8 [JsonConverter(typeof(TcDateTimeConverter)

Net Core 下 Newtonsoft.Json 转换字符串 null 替换成string.Empty

原文:Net Core 下 Newtonsoft.Json 转换字符串 null 替换成string.Empty public class NullToEmptyStringResolver : DefaultContractResolver { /// <summary> /// 创建属性 /// </summary> /// <param name="type">类型</param> /// <param name="

JSON转换

JSON简介 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.它易于编程人员阅读和编写,同时也易于机器解析和生成.它基于JavaScript Programming Language, Standard ECMA-262 3rd Edition – December 1999的一个子集.JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)