delphi json用法
用法:uses Superobject, Sperjson
delphi里有json单元。
procedure TForm2.SuperObjectClick(Sender: TObject);
var
str: string;
jo1: ISuperObject;
begin
jo1 := SO('{}');// 初始化
with jo1.O['recieve'] do
begin
S['status'] := 'OK';
S['module'] := 'Windows';
S['act' ] := 'enter';
with jo1.O['parm'] do begin //这里用with,下面所有的元素都可以减一层,就不用每一行 写jo1.O['parm'] .S[…]
I['CardID' ] := 4; // I: integer
S['Park' ] := ''; // S: stirng
S['PN' ] := 'asd';
B['PNR' ] := True; // B: BOOL
end;
end;
memo1.Lines.Add ('JSON值: ' + jo1.AsJSON(True)); // 加True按格式换行显示
若还想在jo1上多加一层嵌套,则只需再定义个jo2,
jo2 := SO('{}');
jo2.O['data']:= jo1;
(最近接触到json,开始还有点抵触,用多了感觉蛮好玩的,
特别是里面什么都可以放,整形I,数组A,对象O,布尔型B等等,
而且delphi用起来也很方便,可以直接放文本,当变量,里面的值也可以随时改变,真的太方便了。
取值时,也是一层一层的取,若前面都一样可以用with...do...去掉不要的层级.
需要注意的是大小写取值时要区分。)
delphi json用法的更多相关文章
- .NET3.5中JSON用法以及封装JsonUtils工具类
.NET3.5中JSON用法以及封装JsonUtils工具类 我们讲到JSON的简单使用,现在我们来研究如何进行封装微软提供的JSON基类,达到更加方便.简单.强大且重用性高的效果. 首先创建一个类 ...
- (转载)delphi checklistbox用法
delphi checklistbox用法 在Delphi中checklistbox中高亮选中(不论是否Checked)能够进行操作么?删除,上下移动等等 删除:CheckListBox.Delete ...
- C++通过jsoncpp类库读写JSON文件-json用法详解
介绍: JSON 是常用的数据的一种格式,各个语言或多或少都会用的JSON格式. JSON是一个轻量级的数据定义格式,比起XML易学易用,而扩展功能不比XML差多少,用之进行数据交换是一个很好的选择. ...
- Delphi TStringHelper用法详解
Delphi TStringHelper用法详解 (2013-08-27 22:45:42) 转载▼ 标签: delphi_xe5 it 分类: Delphi Delphi XE4的TStringHe ...
- JSON: JSON 用法
ylbtech-JSON: JSON 用法 1. JSON Object creation in JavaScript返回顶部 1. <!DOCTYPE html> <html> ...
- delphi TStringList 用法详解
转自: http://blog.163.com/you888@188/blog/static/67239619201472365642633/ delphi TStringList 用法详解 2014 ...
- json用法常见错误
Json用法三个常见错误 net.sf.json.JSONException: java.lang.NoSuchMethodException
- 问题:c# newtonsoft.json使用;结果:Newtonsoft.Json 用法
Newtonsoft.Json 用法 Newtonsoft.Json 是.NET 下开源的json格式序列号和反序列化的类库.官方网站: http://json.codeplex.com/ 使用方法 ...
- delphi webbrowser用法集锦
delphi webbrowser用法集锦 (2012-05-13 08:29:00) 标签: it 分类: 软件_Software WebBrowser1.GoHome; //到浏览器默认主页 We ...
随机推荐
- centos7 & ubuntu14.02安装sublime 3
Centos7安装Sublime Text 3.0正式版 1.安装 GPG 公钥rpm -v --import https://download.sublimetext.com/sublimehq-r ...
- mysql复制(高可用架构方案的基础)
mysql复制:把一个数据库实例上所有改变复制到另外一个数据库库服务器实例的过程特点:1.没有改变就无所谓复制 ;改变是复制的根本与数据源2.所有的改变:是指可以复制全部改变,也可以复制部分改变 可以 ...
- FTP for win7
In Windows 7, you can share files on home network easily using Home Group but creating an FTP server ...
- RHEL6 64位ASM方式安装oracle 11gR2(二)
本文转载自:http://vnimos.blog.51cto.com/2014866/1221377 三.安装数据库软件 1 2 3 4 5 6 7 8 # unzip -d /stage/ linu ...
- 位数问题(dp 递推)
位数问题 时间限制: 1 Sec 内存限制: 128 MB提交: 35 解决: 19[提交][状态][讨论版][命题人:quanxing] 题目描述 在所有的N位数中,有多少个数中有偶数个数字3? ...
- zabbix监控mysql以及其他常见
zabbix监控mysql以及其他常见,监控mysql,也可是使用percona提供的详细的模板,里面的监控项目非常的详细 <template>Template Percona MySQL ...
- Dynamics CRM 2011 通过工作流发邮件时的权限问题
场景: 在CRM中配置工作流,完成某个步骤后,发送邮件通知其他用户.发件人统一配置为管理员,收件人则根据业务需要设定动态值. 相关权限配置 首先启动流程的用户, 需要允许其他用户代表发送电子邮件 另外 ...
- oracle自动创建表分区
创建一个table,记录哪些表需要创建表分区 create table STAT_TABLE ( tablename VARCHAR2(), pre_partition_name VARCHAR2() ...
- 简单的方法实现仿微信底部的Tab选项卡界面
在网上看了比较多的关于Tab的教程,发现都很杂乱.比较多的用法是用TitlePagerTabStrip和ViewPaper.不过TitlePagerTabStrip有个很大的缺陷,Tab里面的内容刚进 ...
- ubuntu 12.04的源更新
apt-get install vim 安装vim vim /etc/apt/sources.list deb http://mirrors.163.com/ubuntu/ precise main ...