精易论坛

标题: 精易JSON的BUG? [打印本页]

作者: hulala889    时间: 2025-6-20 23:28
标题: 精易JSON的BUG?

取第一个后面被0代替了,取第二行b_id_str却正常,怎么回事?


补充内容 (2025-6-21 09:38):
这个json是网页取回来的,难道用易语言的json无法取出?只能用正则?
作者: nha30    时间: 2025-6-20 23:36
第一个是整数所以溢出了,第二个是文本所以正常。不是BUG
作者: 飞羽软件    时间: 2025-6-21 00:18
整数型会溢出,改 长整数型 就好
作者: 汉族    时间: 2025-6-21 01:21
参考一下 数据类型的范围表
系统基本数据类型列表及其说明如下:

字节型。可容纳 0 到 255 之间的数值。

短整数型。可容纳 -32,768 到 32,767 之间的数值,尺寸为 2 个字节。

整数型。可容纳 -2,147,483,648 到 2,147,483,647 之间的数值,尺寸为 4 个字节。

长整数型。可容纳 -9,223,372,036,854,775,808 到 9,223,372,036,854,775,807 之间的数值,尺寸为 8 个字节。

小数型。可容纳 3.4E +/- 38 (7位小数) 之间的数值,尺寸为 4 个字节。

双精度小数型。可容纳 1.7E +/- 308 (15位小数) 之间的数值,尺寸为 8 个字节。

逻辑型。值只可能为“真”或“假”,尺寸为 2 个字节。“真”和“假”为系统预定义常量,其对应的英文常量名称为“true”和“false”。

日期时间型。用作记录日期及时间,尺寸为 8 个字节。

文本型。用作记录一段文本,文本由以字节 0 结束的一系列字符组成。

字节集。用作记录一段字节型数据。字节集与字节数组之间可以互相转换,在程序中允许使用字节数组的地方也可以使用字节集,或者相反。字节数组的使用方法,譬如用中括号对(“[]”)加索引数值引用字节成员,使用数组型数值数据进行赋值等等,都可以被字节集所使用。两者之间唯一的不同是字节集可以变长,因此可把字节集看作可变长的字节数组。

子程序指针。用作指向一个子程序,尺寸为 4 个字节。具有此数据类型的变量可以用来间接调用子程序。参见例程 sample.e 中的相应部分。

  在以上的基本数据类型中,字节型、短整数型、整数型、长整数型、小数型、双精度小数型被统称为“数值型”,它们之间可以任意转换。不过编程需要注意转换可能带来的精度丢失。譬如:将整数 257 转换为字节后的结果为 1 ,这是因为值 257 超出了字节型数据的最大上限 255 ,从而产生了溢出。

  另外,通用型数据类型仅在系统内部使用,它能够匹配所有的系统基本数据类型、库定义数据类型、自定义数据类型。
作者: hulala889    时间: 2025-6-21 09:27
飞羽软件 发表于 2025-6-21 00:18
整数型会溢出,改 长整数型 就好

json数据是从网页取回来的,我怎么改,取不出来
作者: 野心吖!    时间: 2025-6-21 10:23
用zzjson模版就好了
作者: hongqingfeng    时间: 2025-6-21 10:54
没任何问题呀,你是不是写错了代码

补充内容 (2025-6-21 11:04):
不好意思长度不20位

QQ截图20250621105314.png (162.84 KB, 下载次数: 0)

QQ截图20250621105314.png

作者: 飞羽软件    时间: 2025-6-21 12:52
hulala889 发表于 2025-6-21 09:27
json数据是从网页取回来的,我怎么改,取不出来

用e2ee的存取键值表吧,有取长整数方法
作者: By平凡    时间: 2025-6-21 13:26
超出double取值范围了,精易的json解析之后,数值类型是储存为double类型的,而double的精确整数的取值范围是-9,007,199,254,740,992到9,007,199,254,740,991




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