Delphi10.3构造一个JSON数据的第二种方法,并格式化输出


本文整理自网络,侵删。

 

复制代码
uses
  //System.JSON,
  System.JSON.Types,
  System.JSON.Writers;

procedure TForm1.Button2Click(Sender: TObject);
var
  m_StringWriter: TStringWriter;
  m_JsonWriter: TJsonTextWriter;
begin
  m_StringWriter := TStringWriter.Create();
  m_JsonWriter := TJsonTextWriter.Create(m_StringWriter);
  try
    // JSON代码格式化,None为不格式化
    m_JsonWriter.Formatting := TJsonFormatting.Indented;
    m_JsonWriter.WriteStartObject;
    // 添加班级
    m_JsonWriter.WritePropertyName('五班');
    m_JsonWriter.WriteStartArray;
    // 添加一个学生
    m_JsonWriter.WriteStartObject;
    m_JsonWriter.WritePropertyName('姓名');
    m_JsonWriter.WriteValue('张三');
    m_JsonWriter.WritePropertyName('成绩');
    m_JsonWriter.WriteValue(75.5);
    m_JsonWriter.WriteEndObject;
    // 添加第二个学生
    m_JsonWriter.WriteStartObject;
    m_JsonWriter.WritePropertyName('姓名');
    m_JsonWriter.WriteValue('李四');
    m_JsonWriter.WritePropertyName('成绩');
    m_JsonWriter.WriteValue(21.7);
    m_JsonWriter.WriteEndObject;
    // 结束
    m_JsonWriter.WriteEndArray;
    m_JsonWriter.WriteEndObject;
    // 输出
    Memo1.Lines.Clear;
    Memo1.Lines.Add(m_StringWriter.ToString);
  finally
    m_JsonWriter.Free;
    m_StringWriter.Free;
  end;
end;
复制代码
二、输出结果如下:  

{

    "五班": [

        {

            "姓名": "张三",

            "成绩": 75.5

        },

        {

            "姓名": "李四",

            "成绩": 21.7

        }

    ]

}

 

相关阅读 >>

Delphi 检测进程是否存在

Delphi 获取适合微信使用的当前日期,以int64表示,是当前时间和1970-01-01 00:00:00之间的秒差

Delphi wmi 获取操作系统信息

Delphi获取机器的mac地址

Delphi 泛型搜索字符串数组

Delphi 将字型样式转成字串

Delphi 对非活动窗口进行屏幕截图

Delphi 用 tbytesstream 类实现的读文件为十六进制字符的函数

Delphi 自定义产生随机字符串函数

Delphi文本数据导入数据库的方法

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...