json格式概念
JSON(JavaScript Object Notation) 是一种轻量级的数据传输格式,其采用完全独立于语言的文本格式,使JSON成为理想的数据交换语言。
json由两种格式组成。
1.名称/值”对的集合,可以一起创建多个"名称 / 值对"。
{ “firstName”: “1”, “lastName”:“1”, “qq”: “1234567” }
2.值的有序列表,一般被理解为数组(array)。当需要表示一组值时,只需将多个带花括号的记录分组在一起。
{ “num”: [
{ “firstName”: “1”, “lastName”:“1”, “qq”: “1234567” },
{ “firstName”: “2”, “lastName”:“2”, “qq”: “1234567”},
{ “firstName”: “3”, “lastName”:“3”, “qq”: “1234567” }
]}
由于json是 JavaScript 原生格式,所以在C#中需要下载安装Newtonsoft.Json。
VS2019中安装Newtonsoft
点击工具-nuget包管理器-管理解决方案-浏览搜索-安装
示例
安装完后添加引用就可以写代码了。
建一个窗体程序,设置下界面:
添加引用
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
写代码:
//匿名对象Measure dataObj = new Measure{ ID = "abc",Height = 100,Width = 20,Diameter = 2.152,Plat =0.01};#region//直接序列化//直接转化为Json 格式。string Result = JsonConvert.SerializeObject(dataObj);richTextBox1.AppendText(Result);//保存为文件System.IO.File.WriteAllText(@"D:\measure.json", Result);//反序列化为正常字符串Measure ResultD = JsonConvert.DeserializeObject<Measure>(Result);//反序列化文件Measure ResultD1 = JsonConvert.DeserializeObject<Measure>(System.IO.File.ReadAllText(@"D:\measure.json")); richTextBox2.Text = ResultD.ID;richTextBox2.AppendText(System.Environment.NewLine + ResultD1.Height);#endregion
下面还要加一个类
public class Measure{public string ID { get; set; }public double Height { get; set; }public double Width { get; set; }public double Diameter { get; set; }public double Plat { get; set; }}