『.Net』在C#/.Net中将Json压缩成一行的几种方式
创始人
2024-04-20 14:42:41


📣读完这篇文章里你能收获到

  • 在.Net Core中使用多种方式将Json压缩成一行
  • 主要介绍两种实现方案,Newtonsoft.Json和内置的System.Text.Json

请添加图片描述

文章目录

  • 一、Newtonsoft.Json
  • 二、System.Text.Json

一、Newtonsoft.Json

  • 将 Formatting 参数设为 Formatting.None 来禁用了 JSON 格式化,从而将 JSON 序列化成了一行
  • 如果需要,你还可以在序列化之后使用压缩算法将 JSON 字符串进一步压缩例如使用 GZip 或 Deflate 压缩
  • 但是,在大多数情况下,序列化后的 JSON 字符串已经足够紧凑,不需要进一步压缩
using Newtonsoft.Json;// 定义一个类,作为 JSON 数据的模型
public class MyClass
{public int Id { get; set; }public string Name { get; set; }
}// 创建一个实例
MyClass instance = new MyClass { Id = 1, Name = "Hello, World" };// 序列化对象并压缩成一行
string json = JsonConvert.SerializeObject(instance, Formatting.None);

二、System.Text.Json

  • 在 .NET Core 中,System.Text.Json 命名空间中的类型是 .NET Core 的内置序列化 API
  • 它比 System.Json 和 DataContractJsonSerializer 类型更快、更轻量,并且具有更好的性能和更简洁的 API。所以
  • 如果你的项目基于 .NET Core,建议使用 System.Text.Json 命名空间中的类型来实现
using System.Text.Json;// 定义一个类,作为 JSON 数据的模型
public class MyClass
{public int Id { get; set; }public string Name { get; set; }
}// 创建一个实例
MyClass instance = new MyClass { Id = 1, Name = "Hello, World" };// 序列化对象并压缩成一行
string jsonString = JsonSerializer.Serialize(instance, new JsonSerializerOptions
{WriteIndented = false
});

相关内容

热门资讯

北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
世界上最漂亮的人 世界上最漂亮... 此前在某网上,选出了全球265万颜值姣好的女性。从这些数量庞大的女性群体中,人们投票选出了心目中最美...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...
阿西吧是什么意思 阿西吧相当于... 即使你没有受到过任何外语培训,你也懂四国语言。汉语:你好英语:Shit韩语:阿西吧(아,씨발! )日...
应用未安装解决办法 平板应用未... ---IT小技术,每天Get一个小技能!一、前言描述苹果IPad2居然不能安装怎么办?与此IPad不...