DELPHI盒子
!实时搜索: 盒子论坛 | 注册用户 | 修改信息 | 退出
检举帖 | 全文检索 | 关闭广告 | 捐赠
技术论坛
 用户名
 密  码
自动登陆(30天有效)
忘了密码
≡技术区≡
DELPHI技术
lazarus/fpc/Free Pascal
移动应用开发
Web应用开发
数据库专区
报表专区
网络通讯
开源项目
论坛精华贴
≡发布区≡
发布代码
发布控件
文档资料
经典工具
≡事务区≡
网站意见
盒子之家
招聘应聘
信息交换
论坛信息
最新加入: tino0914
今日帖子: 29
在线用户: 4
导航: 论坛 -> DELPHI技术 斑竹:liumazi,sephil  
作者:
男 tuesdays (Tuesday) ▲▲▲▲△ -
普通会员
2019/10/17 9:51:54
标题:
Qjson 兼容性真的差. 浏览:1506
加入我的收藏
楼主: TQJson.Create;
Add('test','true');   // 这不是string值吗? 

怎么变成这样了??

{
  "test":true
}
----------------------------------------------
delphi界写python最强, python界写delphi最强. 写自己的代码, 让别人去运行.
作者:
男 delphiilove (乌羽玉) ★☆☆☆☆ -
普通会员
2019/10/17 12:25:12
1楼: 用 https://github.com/ahausladen/JsonDataObjects
----------------------------------------------
-
作者:
男 a5824 (Return) ★☆☆☆☆ -
普通会员
2019/10/17 13:15:56
2楼: JsonDataObjects 还是这个好用,顺手,一个文件,写法简单,强烈推荐
----------------------------------------------
-
作者:
男 kngstr (KngStr) ▲▲▲▲△ -
普通会员
2019/10/18 11:16:30
3楼: 请仔细看说明。你只是不会用而已

1、你用的这个方法,现在已经不能这样写了。请更新
2、老版本的这个方法,是自动识别数据格式,所以不存在你说的兼容问题
3、正确写法如下:Add('test','true', jdtString); 当然这个是现在的标准写法
----------------------------------------------
-
作者:
男 wr960204 (武稀松) ★☆☆☆☆ -
盒子活跃会员
2019/10/18 11:23:24
4楼: 可是我觉得完全可以用Variant或者各种函数的overload。
Variant可以做自动识别类型,加个类型参数多写一写代码
----------------------------------------------
武稀松http://www.raysoftware.cn
作者:
男 kngstr (KngStr) ▲▲▲▲△ -
普通会员
2019/10/18 17:03:17
5楼: qjson是有很多overload的
而且添加字符串的这个重载,之前默认jdtUnknown,就是自动识别
但后面有人反馈不合适,才给改成了需要指定。
重载里面有各种类型,Variant也包含在内
----------------------------------------------
-
作者:
男 tuesdays (Tuesday) ▲▲▲▲△ -
普通会员
2019/10/18 20:49:54
6楼: @KngStr

我知道新的已经需要自己指定类型。 但我想说的是, 其实完全可以自动判断类型。 
这得从json原型上来看, 

qjson为什么要把'true' 识别成 布尔值, 是设计错误, 跟类型无关, 他自己在里面='true' 改成了true. 

或者这种设计是为了兼容有 "true" 这种格式的字符传入。  但我想了半天, 不知道哪个语言会把true保存成字符。。 

可能是它想多了。
----------------------------------------------
delphi界写python最强, python界写delphi最强. 写自己的代码, 让别人去运行.
作者:
男 tuesdays (Tuesday) ▲▲▲▲△ -
普通会员
2019/10/18 20:52:03
7楼: if val ='true' 

源代码是这样写的。 

我想不明白, 什么情况才会出现字符true要转回布尔值? 难道json的标准布尔值进入就转成字符了?
----------------------------------------------
delphi界写python最强, python界写delphi最强. 写自己的代码, 让别人去运行.
作者:
男 wuxi15 (似水·流年) ▲▲▲▲▲ -
普通会员
2019/10/19 2:24:57
8楼: 你好,星二大神,这是Qjson的标准
----------------------------------------------
-
信息
登陆以后才能回复
Copyright © 2CCC.Com 盒子论坛 v3.0.1 版权所有 页面执行70.3125毫秒 RSS