json - 如何使用 SuperObject lib 在 Delphi 中创建 JSON 文件?

标签 json delphi superobject

我正在使用 Delphi 2010 和 superobject 库。

我已经了解如何解析 json 文件,但我不知道如何创建 json?

算法是:

  1. 解析 JSON 并加载到 TStringGrid
  2. 添加数据
  3. 将所有 TStringGrid 数据保存为 json。

需要一些例子。

谢谢。

最佳答案

将以下结构提供给 JSON 对象,然后保存到文件的代码示例:

(*
{
  "name": "Henri Gourvest", /* this is a comment */
  "vip": true,
  "telephones": ["000000000", "111111111111"],
  "age": 33,
  "size": 1.83,
  "addresses": [
    {
      "address": "blabla",
      "city": "Metz",
      "pc": 57000
    },
    {
      "address": "blabla",
      "city": "Nantes",
      "pc": 44000
    }
  ]
}
*)

procedure SaveJson;
var
  json, json_sub: ISuperObject;
begin
  json := SO;

  json.S['name'] := 'Henri Gourvest';
  json.B['vip'] := TRUE;
  json.O['telephones'] := SA([]);
  json.A['telephones'].S[0] := '000000000';
  json.A['telephones'].S[1] := '111111111111';
  json.I['age'] := 33;
  json.D['size'] := 1.83;

  json.O['addresses'] := SA([]);

  json_sub := SO;
  json_sub.S['address'] := 'blabla';
  json_sub.S['city'] := 'Metz';
  json_sub.I['pc'] := 57000;
  json.A['addresses'].Add(json_sub);

  json_sub.S['address'] := 'blabla';
  json_sub.S['city'] := 'Nantes';
  json_sub.I['pc'] := 44000;
  json.A['addresses'].Add(json_sub);

  json.SaveTo('C:\json_out.txt');

  json := nil;
  json_sub := nil;
end;

关于json - 如何使用 SuperObject lib 在 Delphi 中创建 JSON 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16790006/

相关文章:

delphi - 从代码添加到 TGridPanel 时如何在两个百分比行之间有一个绝对行?

delphi - Delphi XE5 中的 Firemonkey。如何为托盘中的图标创建弹出菜单?

delphi - 使用indy HTTP客户端和Superobject DELPHI http 400错误代码与rpc服务通信

json - Delphi/SuperObject - 访问子节点

json - 在 App Engine 中将 *bytes.Buffer 转换为 json 和 Unmarshal

c# - IIS 上托管的 WCF 服务无法正常工作

java - 如何将多个json网址的内容添加到单个json对象中

ruby-on-rails - 将 API 响应的属性/属性与本地 stub 进行比较

windows - 如何解锁 Windows 锁屏?

json - 当我使用 SuperObject 解析字符串时,为什么会出现大量问号?