最近碰到一个问题,一个函数要返回多个值,本来是Boolean,现在我改成了TJSONObject。
1.引入头文件
delphi使用JSON要引入一个System.JSON
2.存储
每一个方法里面使用都要先进行变量的声明
编号 | 对象 | 说明 |
---|---|---|
1 | TJSONValue | 所有JSON类的祖先,包括以下所有对象 |
2 | TJSONObject | 一个JSON对象,对应一段JSON字符串 |
3 | TJSONPair | 代表一个Key-Value的JSON对,包括josnString和jsonValue |
4 | TJSONString | 代表一个字符串的JSON节点 |
5 | TJSONNumber | 代表一个数值的JSON节点,可以是整形,也可以是浮点型(日期是浮点型) |
6 | TJSONBool | 代表一个布尔型的JSON节点 |
7 | TJSONArray | 代表一个数组型的JSON节点 |
8 | TJSONTrue | 表示一个TJSONBool型的值为True对象 |
9 | TJSONFalse | 表示一个TJSONBool型的值为False对象 |
var
res: TJSONObject;
begin
//初始化创建res
res := TJSONObject.Create;
//给json追加参数,这里都用string
res.AddPair('res','false');
res.AddPair('name','测试');
result := res;
end;
3.调用
//简单获取值
rs.GetValue('res');
//如果是中文会涉及到转义,所以用JsonValue.Value
//Replace是为了消除引号
rs.Get('name').JsonValue.Value.Replace('"', '')
4.释放
delphi将JSON元素都定义为对象,注意是对象,既然是对象就需要创建,需要释放。
rs.Free;