Delphi 解析JSON
发布日期:2021-05-04 14:30:57 浏览次数:15 分类:技术文章

本文共 1493 字,大约阅读时间需要 4 分钟。

RAD Studio 10.3 测试√

参考数据

{       "五班": [        {               "姓名": "张三",            "成绩": 75.5        },        {               "姓名": "李四",            "成绩": 21.7        },        {               "姓名": "王五",            "成绩": 75.52        },        {               "姓名": "孙六",            "成绩": 21.72        }    ],    "六班": [        {               "姓名": "张三6",            "成绩": 75.56        },        {               "姓名": "李四6",            "成绩": 21.76        },        {               "姓名": "王五6",            "成绩": 75.526        },        {               "姓名": "孙六6",            "成绩": 21.726        }    ]}

记得声明

uses  System.JSON,  System.Generics.Collections;

相关代码

procedure TForm2.Button1Click(Sender: TObject);var  I: Integer;  y_JsonStr: string;  y_SubArray: TJSONArray;  y_JsonObject: TJSONObject;  y_SubJsonObj: TJSONObject;begin  // 读取JSON文件  y_JsonStr := Trim(Memo1.Text);  y_JsonObject := TJSONObject.ParseJSONValue(TEncoding.UTF8.GetBytes(y_JsonStr), 0) as TJSONObject;  // 取内层  y_SubArray := y_JsonObject.getValue('五班') as TJSONArray;  for I := 0 to y_SubArray.Count - 1 do  begin    y_SubJsonObj := y_SubArray.Get(I) as TJSONObject;    // 第一个姓名为自定义的,第二个姓名位参数名【用来获取相关参数值】    Memo2.Lines.Add(Format('标签:%s = %s', ['姓名', y_SubJsonObj.GetValue('姓名').ToString]));    Memo2.Lines.Add(Format('标签:%s = %s', [y_SubJsonObj.Get(1).JsonString.ToString, y_SubJsonObj.GetValue('成绩').ToString]));    Memo2.Lines.Add('--------------------------------');  end;end;

:内容在单元文件2中


学习中记录的一点点笔记,以便以后翻阅。

上一篇:Delphi 数据类型列表
下一篇:Delphi Ini配置文件的简单操作

发表评论

最新留言

很好
[***.229.124.182]2025年04月03日 18时32分07秒