XE3随笔5:Format与转义字符
unit Unit1; interface uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls; type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
end; var
Form1: TForm1; implementation {$R *.dfm} uses SuperObject; //Format
procedure TForm1.Button1Click(Sender: TObject);
var
jo: ISuperObject;
begin
jo := SO('{"Name":"张三", "Age":88, "Tel":["111,222"], "Children":{"Name":"张继"}}'); ShowMessage(jo.Format('姓名: %Name%; 年龄: %Age%')); ShowMessage(jo.Format('%Tel%; %Tel[0]%; %Tel[1]%')); ShowMessage(jo.Format('%Children%; %Children.Name%')); ShowMessage(jo.Format('[Name], [Age]', '[', ']')); {可更换默认的 % 标记}
end; //特殊字符
procedure TForm1.Button2Click(Sender: TObject);
var
jo: ISuperObject;
begin
jo := SO; { \u }
jo := SO('"\u0041\u0042\u0043"');
ShowMessage(jo.AsString); { \x }
jo := SO('"\x41\x42\x43"');
ShowMessage(jo.AsString); { \u 汉字}
jo := SO('"\u4e07\u4e00"');
ShowMessage(jo.AsString); { \u 后面的数字可大写 }
jo := SO('"\u4E07\u4E00"');
ShowMessage(jo.AsString); { \\、\/ }
jo := SO('"A\\B\/C"');
ShowMessage(jo.AsString); { \t、\n 还有 \b、\f、\r }
jo := SO('"A\tB\nC"');
ShowMessage(jo.AsString); { \"" }
jo := SO('"\"ABC\""');
ShowMessage(jo.AsString); { null 是 JSON 的一种数据类型, 代表空值, 空值也是值的一种 }
jo := SO('[1,2,3,null]');
ShowMessage(jo.AsString);
end; end.
XE3随笔5:Format与转义字符的更多相关文章
- XE3随笔21:系统默认语言与系统支持的语言列表
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, For ...
- XE3随笔20:几个和当前路径相关的新函数
偶然从 SysUtils 里发现了几个路径相关的函数, 以前没见过, 可能是 Delphi XE3 新增的: GetLocaleDirectory(); GetLocaleFile(); Locale ...
- XE3随笔18:实例 - 解析 Google 关键字搜索排名
同上例类似, 通过 'http://clients1.google.cn/complete/search?&q=' + "关键字" 可以获取 Google 的关键字搜索排名 ...
- XE3随笔19:实例 - 借用 Google 实现全文翻译
调用 Google 翻译的地址格式: http://ajax.googleapis.com/ajax/services/language/translate?v=1.0&q=" + ...
- XE3随笔17:实例 - 模拟 Google 搜索
本例测试效果图: 代码文件: unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics ...
- XE3随笔16:将字符串转换成 UTF8 编码的函数
这种转换一般用于网页地址; 我不知道 Delphi 是不是有现成的函数, 用到了就写了一个. //函数: function ToUTF8Encode(str: string): string; var ...
- XE3随笔12:TSuperTableString、TSuperAvlEntry
通过 ISuperObject.AsObject 可获取一个 TSuperTableString 对象. TSuperTableString 的常用属性: count.GetNames.GetValu ...
- JSON 之 SuperObject(5): Format 与转义字符
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, For ...
- XE3随笔15:使用 IXMLHTTPRequest 简单获取网页源代码
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, For ...
随机推荐
- 如何测试手机上的SOAP客户端
周四晚上,服务端和客户端的两个同事因为soap接口的问题争论了起来.服务端的同事认为客户端的同事发给服务端的soap消息的xml结构有问题,少了几个xml节点,导致服务器端解析出错.而客户端的同事认为 ...
- windows server2012 r2 上IIS8.5
一时间不知道怎么开头了,直接上图吧! 开始时慢慢记录, 我记得第一次登陆到windows server 2012 r2 服务器时,有一些激动,兴奋,但马上就陷入不知所措的局面,之前完全没 了解过 se ...
- Yii里文件上传的操作方法(图片修改,在详情上展示,批量上传待续...)
$model->img= UploadedFile::getInstance($model,'img');if ($model->validate()) {//$model->img ...
- CRM 权限与分派不一样问题
问题描述: 1 userA用户 为 区域经理; 2 区域经理(角色) 为 分派给userA的安全角色; 3 区域经理(角色) 设置了对实体 客户 的读权限为 业务部门级; 按正常来说userA 应 ...
- JNI日志调试LOG和中文乱码
添加日志: 1. 增加log支持. Android.mk文件增加LOCAL_LDLIBS += -llog 2. C代码中增加(放在最前面) #include <android/log.h> ...
- JAVA设计模式之门面模式
在阎宏博士的<JAVA与模式>一书中开头是这样描述门面(Facade)模式的: 门面模式是对象的结构模式,外部与一个子系统的通信必须通过一个统一的门面对象进行.门面模式提供一个高层次的接口 ...
- Battery Historian for windows环境搭建
Battery Historian for windows环境搭建 简介:Battery historian是一款通过上传bugreport文件分析用户手机中App的电池耗电情况的工具. Batter ...
- vsftpd 修改默认目录
默认配置下: 匿名用户登录 vsftpd 服务后的根目录是 /var/ftp/:系统用户登录 vsftpd 服务后的根目录是系统用户的家目录. 若要修改登录 vsftpd 服务后的根目录,只要修改 / ...
- Linux:ssh连接服务器很慢
ssh连接服务器,如果很慢,可以进行如下处理: vi /etc/ssh/sshd_config#UseDNS yes改成:UseDNS no/etc/init.d/sshd restart ----- ...
- CSS子元素居中(父元素宽高已知,子元素未知)
<style> .container{width:400px; height:400px; position:relative;} .center{position:absolute; l ...