json序列化与反序列化

一 为了后面的便于理解,我先给出瞬时状态、持久化、永久状态的概念
1 瞬时状态:保存在内存的数据,程序退出后,数据就消失了。
2 永久状态:保存在磁盘上的程序数据,程序退出后依然存在。
3 持久化:将程序数据在瞬时状态和永久状态之间相互转换的机制。
二 首先 我们先给出序列化和反序列化的概念
序列化就是把内存中的对象转换为字节序列(二进制流),这些二进制流既可以写入文件, 实现了持久化; 还可以通过网络传输给其他JVM使用,为分布式应用(RMI Remote Method Invocation)提供支持。
反序列化把字节序列(二进制流)恢复为对象的过程称为对象的反序列化。
三 串行化 和 并行化
串行化也叫做序列化,我的理解,从字面意思就是一串的,把对象序列化之后就是一串(字节流)二进制流,所以称为串行化。
并行化也叫反序列化,就是把二进制流又转化为对象。我的理解:对象就不是一串,它有多个属性和多个方法,一起等待对象使用,这些多个属性和方法,所以为并行化。

粗略理解:

序列化:将数据转换为json格式;

反序列化:将json格式转换为规定的数据;

javascript中:

序列化:关键字stringify()

JSON.stringify({});                        // '{}'
JSON.stringify(string);                    // 'string'
JSON.stringify({ name: 张三,age:18 });     // '{"name":"张三","age":18}'

反序列化:关键字parse()

var x = '{"name":"张三", "age":18}';
var y = JSON.parse(x);      // {name: '张三', age: 18}

c#中:

使用json需安装nuget包:Newtonsoft.Json

序列化:关键字 JsonConvert.SerializeObject()

 var json = "{\"Id\":1,\"Name\":\"Furion\"}";
            var x = JsonConvert.DeserializeObject(json);
            var y = JsonConvert.SerializeObject(x);
            var d = 2;

 

反序列化:关键字JsonConvert.DeserializeObject()

var json = "{\"Id\":1,\"Name\":\"Furion\"}";
var x = JsonConvert.DeserializeObject(json);
var d = 2;

c#开发框架furion中

安装nuget包:furion      声明和引用构造方法:

private readonly IJsonSerializerProvider _jsonSerializer;
public SystemService(IJsonSerializerProvider jsonSerializer)
        {
            _jsonSerializer = jsonSerializer;
        }
 public object Json()
        {
            var json = "{\"Id\":1,\"Name\":\"Furion\"}";
            var obj = _jsonSerializer.Deserialize<object>(json);
            var f = _jsonSerializer.Serialize(obj);
            return f;
        }

序列化:关键字_jsonSerializer.Deserialize<object>()  _jsonSerializer为IJsonSerializerProvider构造方法引入的名称

反序列化:关键字_jsonSerializer.Serialize()

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

dudke

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值