delphi json 获取解析

uses引用单元
System.JSON.Serializers,
REST.Json,
System.Json,
System.Types,
System.Json.Types,
System.Json.Writers,
System.Json.Builders;

以下三个函数 分别说明了 json的用法 第二个函数还有json套json

procedure TForm1.Button1Click(Sender: TObject);
var
s:string;
begin
s:=’{“id”:2, “name”:“张三”, “age”:99}’;
jsonob:=tjsonobject.Create;
// jsonob := TJSONObject.ParseJSONValue(TEncoding.UTF8.GetBytes(s), 0,true) as TJSONObject;
// jvalue.GetValue() ;
jvalue := TJSONObject.ParseJSONValue(TEncoding.UTF8.GetBytes(s), 0,true);
ShowMessage( jvalue.GetValue(‘age’).ToString );

end;

function denglusj(name,pw:string; var itoken:string):boolean;
var
json:tjsonvalue;
steam:tstringstream;
s:string;
begin
Result:=false;
//code为0成功,401 token失效,其他均为失败,取msg错误内容
steam:=tstringstream.create(’’);
s:=’/sms/api/login?username=’+name+’&password=’+pw ;
form1.IdHTTP1.Get(s,steam);
form1.Memo1.Lines.Add(steam.DataString);
if steam.DataString<>’’ then
begin
json:= TJSONObject.ParseJSONValue(TEncoding.UTF8.GetBytes(steam.DataString), 0,true);
s:=json.GetValue(‘code’) ;
Result:=(s=‘0’);
if Result then
begin
itoken:=json.GetValue(‘token’) ;
end
else
begin
token:=’’;
end;

end;
steam.Clear;
steam.Free;
end;

function getsjhao(var sjhao:string):string;
var
json:tjsonvalue;
steam:tstringstream;
s:string;
begin

if token=’’ then
begin
result:=‘401’;
exit;
end;

result:=’-9’;

//0 成功 ,401 token失效,-1暂无号码,-2项目禁用-3 余额不足-5状态异常 -4 请求频率过快请延迟10秒
steam:=tstringstream.create(’’);
s:=’/sms/api/getPhone?token=’+token+’&sid=245’ ;
form1.IdHTTP1.Get(s,steam);
form1.Memo1.Lines.Add(steam.DataString);
if steam.DataString<>’’ then
begin
json:= TJSONObject.ParseJSONValue(TEncoding.UTF8.GetBytes(steam.DataString), 0,true);
Result:=json.GetValue(‘code’) ;

if Result=‘0’ then
begin
sjhao:=json.GetValue(‘phone’) ;
end
else
begin
sjhao:=’’;
end;

end;
steam.Clear;
steam.Free;
end;

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值