JSONLab:工具箱编码/解码JSON文件

工具箱编码/解码JSON / UBJSON /在MATLAB /八度MessagePack文件

51 k下载

更新2020年6月14日

查看许可协议

编者按:受欢迎的文件2018年

这个文件被选为MATLAB中央选择的

* * JSONLab 2.0最终发布06/14/2020 (Magnus ')。* *
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
发布网址:https://github.com/fangq/jsonlab/releases/tag/v2.0
取决于://www.tatmou.com/matlabcentral/fileexchange/71434-zmat
显示的数据格式
- JData规范Draft-3:http://github.com/OpenJData/jdata,
-二进制JData规范草案1:http://github.com/OpenJData/bjdata
Python模块读/写JSONLab文件:
- jdata:https://pypi.org/project/jdata/
- bjdata:https://pypi.org/project/bjdata/
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

JSONLab是一个免费和开源JSON / UBJSON / MessagePack编码器和
解码器用本机MATLAB语言编写。它可以用来转换一个MATLAB
数据结构(数组、结构、细胞,结构体数组,细胞数组和对象)
JSON / UBJSON MessagePack格式化字符串和文件,或解析
JSON / UBJSON MessagePack文件到MATLAB数据结构。JSONLab既金宝app支持
MATLAB和GNU Octavehttp://www.gnu.org/software/octave)(一个免费的MATLAB克隆)。

JSON (JavaScript对象表示法,http://www.json.org/)是一个具有高度的可移植性,
人类可读的和“无脂”文本格式来表示复杂和层次
数据,广泛用于数据交换的应用程序。UBJSON(通用二进制JSON,
http://ubjson.org/)是一个二进制JSON格式,设计为专门解决
JSON的限制,允许高效的二进制数据存储与强类型
数据记录,导致较小的文件大小和快速编码和解码。
MessagePack是另一个二进制类json数据格式广泛用于数据
交易所在web /本机应用程序。它比UBJSON更紧凑,
但不是直接可读UBJSON相比。

我们设想,JSON和二进制同行都将发挥重要的
规则不仅对轻量级数据存储,而且对存储和交换
的科学数据。它已经在其他通用的灵活性和通用性
文件规范,如HDF5 [http://www.hdfgroup.org/HDF5/whatishdf5.html]
但却显著降低复杂性和优秀的可读性。

朝着这个目标,我们开发了JData规范(http://github.com/fangq/jdata)
复杂的科学标准化序列的数据结构,如
天数组,稀疏/复值数组,树木、地图、表格和图表的使用
JSON /二进制JSON结构。文本和二进制格式化JData文件
语法与JSON / UBJSON格式兼容,并且很容易解析
使用现有的JSON和UBJSON解析器。JSONLab不仅仅是一个解析器和作家
JSON / UBJSON数据文件,但系统地将复杂的科学
数据结构转换成人类可读的和普遍支持JSON形式使用金宝app
标准化JData数据注释。

请找到详细的在线帮助http://iso2mesh.sf.net/cgi-bin/index.cgi?jsonlab/Doc

= = = =有什么新消息

JSONLab v2.0——代号为“马格纳斯'”——是一个释放JSONLab和稳定
向一个稳定的一个新的里程碑,完整的参考实现
JData规范(http://openjdata.org)便携式科学数据存储。

有许多重大更新添加到这个版本因为前面
在2019年10月发布v1.9.8。下面总结了重大变化的列表
(*)标记的关键功能,包括支持“_ArrayShape_”金宝app
高效编码特殊矩阵以及jsave / jload保存
在MATLAB / Octave和恢复变量如“保存/加载”命令(实验)。

= = = jsave。m = = =

jamdata.jamm jsave %保存当前工作区
jsave mydata.jamm
jsave (“mydata.jamm”、“var”{‘var1’,‘var2})
jsave (“mydata.jamm”、“压缩”、“lzma”)

= = = jload。m = = =

jload %从jamdata加载变量。jamm当前工作区
jload mydata。jamm %负载变量
var = jload (“mydata.jamm”、“var”{‘var1’,‘var2})

= =其他更新

*更改默认工作区为jload和jsave调用者
*创建‘jdata’和‘bjdata python模块与MATLAB共享数据
*添加savebj和用来加载和保存loadbj bjdata
*添加单元测试脚本,解决测试中发现的问题
*加速fast_match_bracket, unicode2native下降速度
*金宝app支持托普利兹矩阵,使用不区分大小写的比较
* jdatadecode现在处理_ArrayOrder_
*添加keeptype选项jsave saveubjson
*使jsave jload八度
*应用数据压缩字符串,新的数据类型字符
*解决loadmsgpack ND数组的问题
*添加jsave和jload便携式数据共享
*添加_Arra金宝appyShape_记录特殊矩阵的支持
* jsonlab matlab R2008兼容
*现在saveubjson implments BJData规范Draft1,https://github.com/fangq/bjdata
*添加UseMap选项,以避免密钥名转换
*减少jsonopt呼吁加快编码和解码
*使jdataencode savejson saveubjson

引用作为

千千方(2022)。JSONLab:工具箱编码/解码JSON文件(//www.tatmou.com/matlabcentral/fileexchange/33381-jsonlab-a-toolbox-to-encode-decode-json-files), MATLAB中央文件交换。检索

版本 发表 发布说明
2.0.1

——修复bjdata规范链接

2.0

——添加单元测试脚本
——应用数据压缩字符串
——添加jsave和jload便携式数据共享
——兼容R2008
——添加UseMap选项containers.Map输出
——金宝app支持BJData规范草案1
——添加_ArrayShape_保存特殊矩阵

1.15.0.0

更新日志:
——更新文档,完成1.0
——修复一个缺陷严格尊重NoRowBracket savejson

1.13.0.0

更新日志:
——修复UBSJON数据字节顺序为所有整数类型
——修复几个GNU octave的兼容性问题
——金宝app支持2 d细胞和结构体数组
——在一个JSON字符串转义特殊字符
——修复一个错误当储蓄UBSJON文件

1.12.0.0

——更新jsonlab 1.0测试版
-修复文件读写错误loadubjson saveubjson

1.11.0.0

更新到1.0的alpha版本,包括功能(saveubjson和loadubjson)写作和阅读通用二进制JSON文件

1.10.0.0

更新日志

- 2012/06/17 *新格式无效字符,拆包在savejson十六进制代码
——在savejson 2金宝app012/06/01 JSONP支持
空单元格——2012/05/25修复bug
——2012/04/05 savejson可以保存到一个文件中

1.9.8.4

——修复一个缺陷在saveubjson在保存整数256

1.9.8.3

——修复openjdata.org链接

1.9.8.2

——更新savejson和saveubjson许可声明

1.9.8.1

——双扩张arrayzipdata savejson saveubjson

1.9.8

官方参考实现JData规范草案2 (http://github.com/fangq/jdata)
最初支持Messa金宝appgePack
nd序列化数组从列为主- >行
支金宝app援LZMA / LZ4 LZHC压缩
支金宝app援图、表类对象

1.9

更新日志:

2012/02/28 loadjson引号逃避错误,看到的http://bit.ly/yyk1nS
布莱克2012/01/25补丁处理root-less对象,由约翰逊
——在loadjson.m unescape字符串
——金宝app支持zmat base64编码
——金宝app支持数据压缩
——金宝app支持函数处理
——添加选项解析字符串数组或转换为字符
——将字符串数组作为单元阵列在更新的matlab
——在ubjson节省64位整数

1.7.0.0

更新日志:
2012/01/13加快loadjson 20折叠在matlab分析大型数据数组
2012/01/11删除行支架如果有一个数组元素
2011/12/22接受一系列的参数,输入值
2011/11/18修复结构体数组bug

1.5

用大端格式存储浮点数在saveubjson (d / d)
加速解析大量非结构化数据
-解析独立的空白
能解析同质元素的数组
修复一个缺陷,防止在savejson保存到一个文件

1.3.0.0

更新日志:

2011/10/21 loadjson修复bug,先前的代码没有使用任何的加速度
2011/10/20 loadjson支金宝app持JSON集合:appendable JSON对象

1.2.0.0

- 2 x速度savejson(问题# 17)
——修复文件名错误(SVN牧师# 495)
——添加SingletCell / SingletArray旗帜(问题# 15 # 8)
——修复文件名称错误(拉# 14)
细胞与转置数据修复bug(拉# 12)
——出口matlab对象JSON(拉# 10 # 11)
- 2 x速度savejson(问题# 17)
——修复文件名错误(SVN牧师# 495)
——添加SingletCell / SingletArray旗帜(问题# 15 # 8)
——修复文件名称错误(拉# 14)
细胞与转置数据修复bug(拉# 12)
——出口matlab对象JSON(拉# 10 # 11)
- 2 x速度savejson(问题# 17)
——修复文件名错误(SVN牧师# 495)
——添加SingletCell / SingletArray旗帜(问题# 15 # 8)
——修复文件名称错误(拉# 14)
细胞与转置数据修复bug(拉# 12)
——出口matlab对象JSON(拉# 10 # 11)
- 2 x速度savejson(问题# 17)
——修复文件名错误(SVN牧师# 495)
——添加SingletCell / SingletArray旗帜(问题# 15 # 8)
——修复文件名称错误(拉# 14)
细胞与转置数据修复bug(拉# 12)
——出口matlab对象JSON(拉# 10 # 11)

1.1.0.0

大大加速loadjson
在loadjson解析逻辑值
-选项不区分大小写
阅读unicode编码的json文件
那样\ uXXXX在unicode字符串
处理转义字符的字符串
实现了UBJSON Draft12新名称格式