DELPHI盒子
!实时搜索: 盒子论坛 | 注册用户 | 修改信息 | 退出
检举帖 | 全文检索 | 关闭广告 | 捐赠
技术论坛
 用户名
 密  码
自动登陆(30天有效)
忘了密码
≡技术区≡
DELPHI技术
lazarus/fpc/Free Pascal
移动应用开发
Web应用开发
数据库专区
报表专区
网络通讯
开源项目
论坛精华贴
≡发布区≡
发布代码
发布控件
文档资料
经典工具
≡事务区≡
网站意见
盒子之家
招聘应聘
信息交换
论坛信息
最新加入: wjy13061029975
今日帖子: 1
在线用户: 4
导航: 论坛 -> DELPHI技术 斑竹:liumazi,sephil  
作者:
男 earthsbest (全能中间件) ▲▲▲▲△ -
普通会员
2017/11/18 14:21:43
标题:
Delphi 自带的 System.Json 对象/结构体序列化性能大增 浏览:3679
加入我的收藏
楼主:      今天在盒子闲逛,无意中看到有人说XE7自带的Json对象序列化很慢,帖子在这里:http://bbs.2ccc.com/topic.asp?topicid=464378 经过测试的确如此。
     但是 D10.2后,自带的Json做了优化,性能大大的提高了。

   
此帖子包含附件:
PNG 图像
大小:13.2K
----------------------------------------------
Delphi4Linux Delphi三层/FireDAC 技术群:734515869 http://www.cnblogs.com/rtcmw
作者:
男 earthsbest (全能中间件) ▲▲▲▲△ -
普通会员
2017/11/18 14:24:50
1楼: 附测试代码:
此帖子包含附件:earthsbest_20171118142450.zip 大小:3.17M
----------------------------------------------
Delphi4Linux Delphi三层/FireDAC 技术群:734515869 http://www.cnblogs.com/rtcmw
作者:
男 earthsbest (全能中间件) ▲▲▲▲△ -
普通会员
2017/11/18 15:29:52
2楼: 虽然现在重点是移动开发了,大部分更新都是FMX,但是windows也是在不断优化的,还增加很多基础功能,比如System.Threading、System.Net.HttpClient、System.Hash,还有 TEncoding 处理各种编码不知道有多方便。
所以别说什么windows开发,没必要升级到高版本,D7够用了之类的话。
----------------------------------------------
Delphi4Linux Delphi三层/FireDAC 技术群:734515869 http://www.cnblogs.com/rtcmw
作者:
男 mousesoft (MouseSoft) ★☆☆☆☆ -
盒子活跃会员
2017/11/18 22:18:01
3楼: 平时没测这么细,
----------------------------------------------
-
作者:
男 letianwuji (大器晚成) ▲▲▲▲▲ -
普通会员
2017/11/18 23:14:23
4楼: System.Net.HttpClient 这个真的不错,比原来的ihttp牛叉太多
----------------------------------------------
相信自己,若自己都不相信,那还有谁可信。
作者:
男 gaoyong_gy (gaoyong_gy) ★☆☆☆☆ -
盒子活跃会员
2017/11/21 15:58:10
5楼: 楼主的研究,值得收藏。







==========
Delphi移动程序通用界面设计 推广版

我的博客:http://blog.163.com/you888@188/blog/static/6723961920159271412582/

599购买:https://item.taobao.com/item.htm?id=522707335329

demo下载:http://pan.baidu.com/s/1slNsiN7

推广版本超级优惠中,时间有限。
----------------------------------------------
Delphi 的移动程序开发,是您不可再错失的机遇:http://blog.163.com/you888@188/blog/static/6723961920169319529515/
作者:
男 gaoyong_gy (gaoyong_gy) ★☆☆☆☆ -
盒子活跃会员
2017/11/21 16:00:29
6楼: Json使用示例解析、组装、增加、删除、查询天气、查询快递等等(采用Delphi自己带的json解析单元)
此帖子包含附件:gaoyong_gy_2017112116022.rar 大小:3.29M
----------------------------------------------
Delphi 的移动程序开发,是您不可再错失的机遇:http://blog.163.com/you888@188/blog/static/6723961920169319529515/
作者:
男 cloudysoul (cloudysoul) ★☆☆☆☆ -
普通会员
2017/12/5 10:15:59
7楼: 最近在玩玩手机端天气查询,用idhttp查询时会出现些问题,http和https网址之间切换查询会出错,后来换TNetHTTPClient随意切换,所以说delphi一直在进步,而且进步很大。
----------------------------------------------
-
作者:
男 feiyanm (feiyanm) ▲▲▲▲▲ -
普通会员
2017/12/5 14:17:51
8楼: 果然有进步,终于赶上了2005年的行业平均水平!!!
----------------------------------------------
Delphi威武!千秋万代,一统江湖!Delphi威武!千秋万代,一统江湖!Delphi威武!千秋万代,一统江湖!Delphi威武!千秋万代,一统江湖!Delphi威武!千秋万代,一统江湖!Delphi威武!千秋万代,一统江湖!Delphi威武!千秋万代,一统江湖!我去WC吐一会儿去!
作者:
男 earthsbest (全能中间件) ▲▲▲▲△ -
普通会员
2017/12/6 8:46:40
9楼: 和其他json库对比了序列化和反序列化性能,JsonDataObjects 性能最好,但是只支持简单的对象,不支持结构体,QJson 则不支持动态数组,不支持 Attributes (RTTI),比如需要排除某些字段,System.Json 和 XSuperObject 可支持。总体来说,个人比较喜欢10.2新增的 TJsonSerializer,简洁、且使用方便,无需第三方库,如果要在低版本 Delphi 使用,JsonDataObjects 是不错的选择。
此帖子包含附件:
PNG 图像
大小:38.4K
----------------------------------------------
Delphi4Linux Delphi三层/FireDAC 技术群:734515869 http://www.cnblogs.com/rtcmw
作者:
男 wuxiangyang (wxy) ★☆☆☆☆ -
盒子活跃会员
2017/12/14 9:45:49
10楼: 支持,楼主辛苦了
----------------------------------------------
-
作者:
男 dmzn (dmzn) ★☆☆☆☆ -
盒子活跃会员
2018/1/3 17:06:59
11楼: TRecord结构的序列化代码如下:
//Date: 2017-12-20
//Parm: 结构数据
//Desc: 序列化nRecord为json字符串
class function TEncodeHelper.EncodeRecord<T>(const nRecord: T): string;
var nSeriallizer: TJsonSerializer;
begin
  nSeriallizer := nil;
  try
    nSeriallizer := TJsonSerializer.Create;
    with nSeriallizer do
    begin
      Formatting := TJsonFormatting.None;
      DateParseHandling := TJsonDateParseHandling.None;
      DateTimeZoneHandling := TJsonDateTimeZoneHandling.Utc;
      DateFormatHandling := TJsonDateFormatHandling.FormatSettings;
    end;

    Result := nSeriallizer.Serialize<T>(nRecord);
    //do serial
  finally
    nSeriallizer.Free;
  end;
end;

//Date: 2017-12-20
//Parm: 序列化json字符串
//Desc: 将nRecord反序列化为T结构
class function TEncodeHelper.DecodeRecord<T>(const nRecord: string): T;
var nSeriallizer: TJsonSerializer;
begin
  nSeriallizer := nil;
  try
    nSeriallizer := TJsonSerializer.Create;
    with nSeriallizer do
    begin
      Formatting := TJsonFormatting.None;
      DateParseHandling := TJsonDateParseHandling.None;
      DateTimeZoneHandling := TJsonDateTimeZoneHandling.Utc;
      DateFormatHandling := TJsonDateFormatHandling.FormatSettings;
    end;

    Result := nSeriallizer.Deserialize<T>(nRecord);
    //do serial
  finally
    nSeriallizer.Free;
  end;
end;
----------------------------------------------
生活愉快.
作者:
男 zyp1984 (小李他妈的飞刀) ★☆☆☆☆ -
普通会员
2018/1/3 22:10:57
12楼: 好,不错
----------------------------------------------
山外青山楼外楼,能人背后有能人弄..
作者:
男 ksrsoft (cb168) ★☆☆☆☆ -
普通会员
2018/1/19 16:24:37
13楼: json 不错
----------------------------------------------
-
信息
登陆以后才能回复
Copyright © 2CCC.Com 盒子论坛 v3.0.1 版权所有 页面执行104.4922毫秒 RSS