zoukankan      html  css  js  c++  java
  • Delphi中Json之superobject

    superobject版本为1.2

    开发环境D7

    太容易忘记了,做个笔记

    //1. Json的数组添加和赋值 

     1 var
     2   Ijson,Ijson_01:ISuperObject;
     3   s:string;
     4   i:Integer;
     5 begin
     6   Ijson:=superobject.SO('{}');
     7   Ijson.S['Set01']:='0000';
     8   Ijson.S['Set02']:='1111';
     9   Ijson.s['WhereSQLSet']:='WHere sdghfgj=sdfjhdf';
    10   Ijson['WhereSQLSetDisplay']:=superobject.SA([]);
    11   Ijson_01:=superobject.SO('{}');
    12   for i:=1 to 10 do
    13   begin
    14     Ijson_01.S['ID']:=IntToStr(i);
    15     Ijson_01.S['Name']:='A_'+IntToStr(i);
    16     Ijson.A['WhereSQLSetDisplay'].Add(Ijson_01);
    17   end;
    18  Memo3.Text:=Ijson.AsString;
    19 end;

    //2. 数组中套数组

     1 var
     2   Ijson,Json_array:ISuperObject;
     3   s:string;
     4   i:Integer;
     5 begin
     6   Ijson:=superobject.SO('{}');
     7   Ijson.S['Set01']:='0000';
     8   Ijson.S['Set02']:='1111';
     9   Ijson.s['WhereSQLSet']:='WHere sdghfgj=sdfjhdf';
    10   Ijson['WhereSQLSetDisplay']:=superobject.SA([]);
    11   //Ijson_01:=superobject.SO('{}');
    12   Memo3.Clear;
    13   for i:=1 to 10 do
    14   begin
    15     Json_array:= superobject.SA([]);
    16     Json_array.AsArray.S[0] :=IntToStr(i);
    17     Json_array.AsArray.S[1] :='A_'+IntToStr(i);
    18     Ijson.A['WhereSQLSetDisplay'].Add(Json_array);
    19 
    20   end;
    21   Memo3.Text:=Ijson.AsString;
    22 end;

    //3.读取2中的Memo3的数组值

     1 var
     2   Ijson,Ijson_array:ISuperObject;
     3   vs:string;
     4   i:Integer;
     5 begin
     6   Ijson:=superobject.SO(Memo3.Text);
     7   //读数组
     8   vs:='';
     9   Memo4.Clear;
    10   for i:=0 to 9 do
    11   begin
    12     Ijson_array:=superobject.SO(Ijson['WhereSQLSetDisplay'].AsArray.s[i]);
    13     vs:=Ijson_array.AsArray.s[0]+';'+
    14     Ijson_array.AsArray.S[1];
    15     memo4.Lines.Add(vs);
    16   end;
    17 end;

    //4.读取这个[{"name":"A000000","teacher":"Tea000000","classroom":"C_R000000"},{"name":"A000001","teacher":"Tea000001","classroom":"C_R000001"}]

    只提供思路,代码片段,一种写法

     1  jo := SO(str);
     2 
     3     
     4     for i:=0 to jo.AsArray.Length-1   do  //jo.AsArray.Length-1
     5     begin
     6       Append;
     7       FieldByName('name').Value := jo.AsArray[i]['name'].AsString;
     8       FieldByName('teacher').Value :=jo.AsArray[i]['teacher'].AsString;
     9       FieldByName('classroom').Value :=jo.AsArray[i]['classroom'].AsString;
    10       
    11     end;
  • 相关阅读:
    js localtion.href 数据传输
    java.lang.ClassNotFoundException: com.mysql.cj.jdbc.Driver 找不到jar包的问题,路径问题
    java 深度拷贝 复制 深度复制
    解决java在对MySQL插入数据时出现乱码问题
    python最大最小距离算法贴近度评价法
    java 连接数据库报错:Caused by: com.mysql.cj.exceptions.InvalidConnectionAttributeException: The server time zone value '
    java map 转 json 自编封装
    java 连接MySQL的代码
    在前端发起ajax遇到问题
    java map转json servlet response
  • 原文地址:https://www.cnblogs.com/dmqhjp/p/15777868.html
Copyright © 2011-2022 走看看