精易论坛

标题: 研究Json技术,易语言Json的优化 [打印本页]

作者: 键盘上的魔手    时间: 2016-11-8 17:52
标题: 研究Json技术,易语言Json的优化
本帖最后由 键盘上的魔手 于 2016-11-8 23:57 编辑

最近编写软件,使用频率最高的Json数据,一直让我很头疼。精易模块的类_Json一下子就崩溃了。
所以自己写了一个Json类库
依赖com组件,但是效率速度也是杠杠的。

留贴表示激动,晚点会发布模块,第一个Json模块

这个循环调用觉不会崩溃,内存也优化到最优!

晚点发布,忽删!

点赞点评的刷起来,我都那么辛苦了。

  1. 程序集 烁_JSON, , 公开

  2. .子程序 解析, , 公开
  3. .参数 参数, 文本型, , 符合格式的json字符串

  4. .子程序 清除, , 公开

  5. .子程序 取属性成员数, 整数型, 公开
  6. .参数 参数, 文本型, 可空, json格式的访问规则{"user":"ss","list":[{"u":"666"}]},访问规则可以是user.list.0.u

  7. .子程序 取属性值, 文本型, 公开
  8. .参数 参数, 文本型, , json格式的访问规则{"user":"ss","list":[{"u":"666"}]},访问规则可以是user.list.0.u
复制代码


超方便,速度超级快!!!

各位大神,模块已出,帮忙测试测试!!!支持无限极嵌套!!!


各位,初始化函数  解析() 是json对象必须调用的函数,不然无法取值,最后,取完数据,记得释放资源,就是调用 清除() !!!!!!

QQ截图20161108174857.png (13.06 KB, 下载次数: 23)

QQ截图20161108174857.png

QQ截图20161108174905.png (8.73 KB, 下载次数: 19)

QQ截图20161108174905.png

QQ截图20161108235223.png (130.54 KB, 下载次数: 19)

论坛对json一片哀鸿,希望我的模块能帮到大家啊

论坛对json一片哀鸿,希望我的模块能帮到大家啊

烁Json模块.rar

1.92 KB, 下载次数: 500, 下载积分: 精币 -2 枚


作者: 日渐消瘦    时间: 2016-11-8 18:05
对解析的文本有没有长度限制
作者: 键盘上的魔手    时间: 2016-11-8 18:08
CRstudio 发表于 2016-11-8 18:05
对解析的文本有没有长度限制

没有,只要是合规则的json文本。
作者: 铅笔刀    时间: 2016-11-8 18:16
特意百度了一下json
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于ECMAScript的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C、C++、C#、Java、JavaScript、Perl、Python等)。这些特性使JSON成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成(一般用于提升网络传输速率)。
作者: 键盘上的魔手    时间: 2016-11-8 18:17
铅笔刀 发表于 2016-11-8 18:16
特意百度了一下json
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于ECMAScript的 ...

爱学习的boy,赞
作者: 日渐消瘦    时间: 2016-11-8 18:53
键盘上的魔手 发表于 2016-11-8 18:08
没有,只要是合规则的json文本。

比如精易的正则和json解析只要超过一定长度的规则文本,都会解析失败!你确定没问题?文本的行数上万行
作者: 键盘上的魔手    时间: 2016-11-8 23:16
CRstudio 发表于 2016-11-8 18:53
比如精易的正则和json解析只要超过一定长度的规则文本,都会解析失败!你确定没问题?文本的行数上万行

我的有10W行
作者: 镇坛道德标杆    时间: 2016-11-9 02:46
研究过一段时间json解析   也看过易语言几乎所有公开的json解析源码    大概是易语言大牛没有什么人对json解析算法感兴趣吧   没找到一个符合要求的
最终还是dll调用了一个号称最快的json解析库    和易语言的json解析在效率上有数量级上的差距   而且线程安全................
fasterjson   国人写的  感兴趣可以了解下  如果能翻译过来应该比这个给力太多
作者: 宇智波·泉奈    时间: 2016-11-9 09:18
易语言很少人写着玩意
作者: 键盘上的魔手    时间: 2016-11-9 09:33
宇智波·泉奈 发表于 2016-11-9 09:18
易语言很少人写着玩意

这个玩意post,是很有必要的。配合自定义数据结构,可以很合理的解决一些断言不能实现的功能。
作者: 键盘上的魔手    时间: 2016-11-9 10:19
嗨起来!!!
作者: 529512527    时间: 2016-11-9 10:20
这里是发源码的你发模块你看看自己的标题
作者: 键盘上的魔手    时间: 2016-11-9 10:21
529512527 发表于 2016-11-9 10:20
这里是发源码的你发模块你看看自己的标题

先测试,说不定会开源呢?
作者: 易语言老米    时间: 2016-11-9 20:31
大哥 ,精易论坛的json我放到线程里不能用  你的可以用吗
作者: ck66    时间: 2016-11-9 21:14
楼主  你很给力 json  目前 真心用得挺多的
作者: ck66    时间: 2016-11-9 21:27
junkboy 发表于 2016-11-9 02:46
研究过一段时间json解析   也看过易语言几乎所有公开的json解析源码    大概是易语言大牛没有什么人对json ...

求分享一下呢
作者: 键盘上的魔手    时间: 2016-11-9 21:49
易语言老米 发表于 2016-11-9 20:31
大哥 ,精易论坛的json我放到线程里不能用  你的可以用吗

用我的啊,我的10W多维度,都可以的。我自己的项目都用上了,你看我的截图啦,不就是循环线程嘛
作者: 键盘上的魔手    时间: 2016-11-9 21:50
ck66 发表于 2016-11-9 21:14
楼主  你很给力 json  目前 真心用得挺多的

谁用谁知道。我这个速度是其他的json模块不可以比拟的。
作者: yuye6262186    时间: 2016-11-9 22:13
谢谢楼主分享, 支持
作者: 键盘上的魔手    时间: 2016-11-9 22:35
yuye6262186 发表于 2016-11-9 22:13
谢谢楼主分享, 支持

赞一个呗赞一个呗赞一个呗赞一个呗
作者: 节能轩    时间: 2016-11-9 22:45
算盘不低牛景颇族。12348688
作者: 键盘上的魔手    时间: 2016-11-10 10:23
不要沉下去哦
作者: 易语言老米    时间: 2016-11-11 22:21
键盘上的魔手 发表于 2016-11-9 21:49
用我的啊,我的10W多维度,都可以的。我自己的项目都用上了,你看我的截图啦,不就是循环线程嘛

我说的启动线程 启动一个子程序   然后把json放在子程序里啊。。不是循环。。
作者: 易语言老米    时间: 2016-11-11 22:22
给个json的案例源码吧  主要想看需要json解析的文本,和代码怎么写取属性值的。。我qq问过你 。。哎不会用你的模块
作者: lcj21    时间: 2016-11-12 08:39
下来看看怎么样!
作者: yuhaozi2    时间: 2016-11-13 14:30
感谢您为易语言作出贡献!!为易友提供学习资料!!
作者: 沁园春2016    时间: 2016-11-16 11:46
提示: 作者被禁止或删除 内容自动屏蔽
作者: shisuo    时间: 2016-11-16 18:09
没有开源 发这里 不合适吧
作者: 钱女友    时间: 2016-11-17 20:58
老板能不能来个例子,,,,看了半天不会用,,
作者: 键盘上的魔手    时间: 2016-11-18 09:55
钱女友 发表于 2016-11-17 20:58
老板能不能来个例子,,,,看了半天不会用,,

截图不是例子吗。。。
作者: yuewe    时间: 2016-11-18 12:00
本帖最后由 yuewe 于 2016-11-18 12:06 编辑

{:soso__3669389859068460655_4:}                    
作者: zyx521147    时间: 2016-11-18 19:33
学习 啥时候开源 必须联系我
作者: chaoke    时间: 2016-11-21 03:51
我也常调用JSON
作者: 国际机票    时间: 2016-11-22 23:17
太坑,不能用,
作者: 键盘上的魔手    时间: 2016-11-23 10:08
烁Json模块1.1,加速解析速度,大文本解析速度
修复已知的bug

1S3594354-11.jpg (55 KB, 下载次数: 13)

1S3594354-11.jpg

002boHqqgy6OuXblCHc36&690.jpg (56.29 KB, 下载次数: 13)

002boHqqgy6OuXblCHc36&690.jpg

烁Json模块1.1.rar

2.85 KB, 下载次数: 30, 下载积分: 精币 -2 枚

烁Json模块1.1模块


作者: 乂巾    时间: 2016-11-26 21:54
用不了
作者: jianghw    时间: 2016-11-27 22:33
尝试了半天 发现确实不会用  希望作者来个例程吧
作者: 键盘上的魔手    时间: 2016-11-28 11:40
jianghw 发表于 2016-11-27 22:33
尝试了半天 发现确实不会用  希望作者来个例程吧

http://125.confly.eu.org/forum.php?mod= ... rtype=1#pid10482874
作者: erlin    时间: 2016-12-1 00:13
换了无数的json,就你的最快了,太牛逼了
作者: erlin    时间: 2016-12-1 00:16
你这里面是不是自带了多线程啊?量大的精易是一个个蹦,你的都基本秒出
作者: 键盘上的魔手    时间: 2016-12-1 10:00
erlin 发表于 2016-12-1 00:16
你这里面是不是自带了多线程啊?量大的精易是一个个蹦,你的都基本秒出

http://125.confly.eu.org/forum.php?mod= ... 13960365&extra=

有版本更新
作者: 键盘上的魔手    时间: 2016-12-1 10:38
erlin 发表于 2016-12-1 00:16
你这里面是不是自带了多线程啊?量大的精易是一个个蹦,你的都基本秒出

没有自带多线程
作者: 65426548    时间: 2017-8-4 14:59
下载下来看一下哈
作者: Else    时间: 2017-8-20 14:48
junkboy 发表于 2016-11-9 02:46
研究过一段时间json解析   也看过易语言几乎所有公开的json解析源码    大概是易语言大牛没有什么人对json ...

求这个dll的地址和教程
作者: 大兔崽子    时间: 2017-8-24 11:37
= =  不知道为嘛 js.取自定义属性值 ()  一直都没法获取值  然后 楼主的 函数说明写的有丢丢问题   
    参数<1>的名称为“参数”,类型为“文本型”。注明:json格式的访问规则{"user":"ss","list":[{"u":"666"}]},访问规则可以是user.list.0.u。

规则 应该是  list.0.u   前面没有 user
作者: 键盘上的魔手    时间: 2017-8-24 11:58
大兔崽子 发表于 2017-8-24 11:37
= =  不知道为嘛 js.取自定义属性值 ()  一直都没法获取值  然后 楼主的 函数说明写的有丢丢问题   
     ...

是的,你很仔细,么么哒
作者: a305783289    时间: 2017-11-12 13:02
感谢您为易语言作出贡献!!为易友提供学习资料!!
作者: 1026731218    时间: 2017-12-26 03:45
看看吧不知道怎么样
作者: 1026731218    时间: 2017-12-26 03:45
对解析的文本有没有长度限制
作者: fjsmnhdxg    时间: 2018-3-29 18:53
学习一下。。。
作者: Sanat    时间: 2018-8-14 14:05
感谢您为易语言作出贡献!!为易友提供学习资料!!
作者: 噢噢    时间: 2018-8-24 23:10
感谢您为易语言作出贡献!!为易友提供学习资料!!
作者: Else    时间: 2018-8-27 11:54
镇坛道德标杆 发表于 2016-11-9 02:46
研究过一段时间json解析   也看过易语言几乎所有公开的json解析源码    大概是易语言大牛没有什么人对json ...

大神  求例子。
作者: 超超超超    时间: 2018-8-30 11:44
你确定很快?我怎么用上看 还不如精益的快?
作者: Breathless    时间: 2018-10-9 10:31
跟进步伐,感谢!
作者: 轻风影    时间: 2018-10-24 01:45
不错,下来看看
作者: gaolele666    时间: 2018-12-11 13:46
23太3它4与3与5y
作者: 子鱼乐    时间: 2018-12-16 16:19
确实不容易啊
作者: 八八就发    时间: 2019-4-23 20:26
如何处理数组啊?
作者: pps1984    时间: 2019-5-8 23:37
这个模块很慢, 说实话, 比精益慢, 最快是ejson
作者: 已注销103181    时间: 2020-1-5 04:49
提示: 作者被禁止或删除 内容自动屏蔽
作者: qq553351106    时间: 2020-1-5 05:14
点通粉丝点通粉丝点通粉丝
作者: 东海龙王    时间: 2020-8-27 21:11
fdsfsdfdsfdgcvcx
作者: 兴奋小猪    时间: 2021-5-18 13:48
谢谢分享,在用精易模块的JSON解析,超级的慢,都改用改用多线程了,才好一点点,瓶颈还是在JONS解析上面




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4