System.JSON.Builders.pas

System.JSON.Builders.pas

delphi10 berlin增加的新单元,都说用它构建json方便。

uses
System.JSON.Writers, System.JSON.Types, System.JSON.Builders;

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
procedure TForm2.Button1Click(Sender: TObject);
var sb: TStringBuilder;
  sw: TStringWriter;
  jtw: TJsonTextWriter;
  job: TJSONObjectBuilder;
begin
  sb := TStringBuilder.Create;
  sw := TStringWriter.Create(sb);
  jtw := TJsonTextWriter.Create(sw);
  jtw.Formatting := TJsonFormatting.Indented;
  job := TJSONObjectBuilder.Create(jtw);
  job
    .BeginObject
      .BeginArray('数组')
        .BeginObject.Add('id', 123)
          .Add('Name', '名称一')
          .AddNull('parent_id')
        .EndObject
      .EndArray
    .EndObject;
  Memo1.Text := sb.ToString;
  (*输出的json
{
    "数组": [
        {
            "id": 123,
            "Name": "名称一",
            "parent_id": null
        }
    ]
}
  *)
end;

  

posted @   delphi中间件  阅读(317)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
历史上的今天:
2020-04-27 crossvcl使用
2018-04-27 unidbgrid列排序
2013-04-27 HexStrToStream
2013-04-27 StreamToHexStr
点击右上角即可分享
微信分享提示