zoukankan      html  css  js  c++  java
  • 四、Delphi10.3读取JSON数据

    一、我们有一段JSON数据如下:

    {
        "五班": [
            {
                "姓名": "张三",
                "成绩": 75.5
            },
            {
                "姓名": "李四",
                "成绩": 21.7
            }
        ]
    }

    二、使用Delphi代码读取,代码如下:

    uses
      System.Types,
      System.JSON,
      System.JSON.Types,
      System.JSON.Writers,
      System.JSON.Builders;
    
    procedure TForm1.Button4Click(Sender: TObject);
    var
      I: Integer;
      m_JsonStr: string;
      m_SubArray: TJSONArray;
      m_JsonObject: TJSONObject;
      m_SubJsonObj: TJSONObject;
    begin
      // 读取JSON文件
      m_JsonStr := Trim(Memo1.Text);
      m_JsonObject := TJSONObject.ParseJSONValue(TEncoding.UTF8.GetBytes(m_JsonStr), 0) as TJSONObject;
      
      // 取最外层
      for I := 0 to m_JsonObject.count - 1 do
      begin
        Memo2.Lines.Add(m_JsonObject.Get(I).JsonString.toString + ' = ' + m_JsonObject.Get(I).JsonValue.ToString);
      end;
    
      // 取内层
      m_SubArray := m_JsonObject.getValue('五班') as TJSONArray;
      for I := 0 to m_SubArray.size - 1 do
      begin
        m_SubJsonObj := m_SubArray.Get(I) as TJSONObject;
        Memo2.Lines.Add(Format('标签:%s = %s', [m_SubJsonObj.Get(0).JsonString.ToString, m_SubJsonObj.Get(0).JsonValue.ToString]));
        Memo2.Lines.Add(Format('标签:%s = %s', [m_SubJsonObj.Get(1).JsonString.ToString, m_SubJsonObj.Get(1).JsonValue.ToString]));
      end;
    end;

    三、显示结果如下:

    不忘初心,如果您认为这篇文章有价值,认同作者的付出,可以微信二维码打赏任意金额给作者(微信号:382477247)哦,谢谢。

  • 相关阅读:
    eNSP进行配置网络模拟网络联通
    Labview上使用mydaq采集数据
    Labview实现计算器
    matlab小记(四)
    matlab小记(三)
    matlab小记(二)
    matlab小记(一)
    Python中map和reduce
    Python 如何调用自定义函数
    《机电传动控制》第十一周作业(二)
  • 原文地址:https://www.cnblogs.com/tianpan2019/p/10498630.html
Copyright © 2011-2022 走看看