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

버전2.0.1(137kb)작성자: 千千方
在MATLAB/Octave中编码/解码JSON/UBJSON/MessagePack文件的工具箱

다운로드수:51.5k

업데이트날짜:2020/6/14

라이선스보기

편집자메모:受欢迎的文件2018

此文件被选为MATLAB Central本周精选

** JSONLab 2.0 Final (Magnus Prime)于2020年6月14日发布
==============================================================
发布网址:https://github.com/fangq/jsonlab/releases/tag/v2.0
取决于://www.ru-cchi.com/matlabcentral/fileexchange/71434-zmat
数据格式根据
- JData规范草案-3:http://github.com/OpenJData/jdata,
-二进制JData规范草案-1http://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两者都支持
MATLAB及GNU Octave [http://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
标准化复杂科学数据结构的序列化,例如
N-D数组,稀疏/复值数组,树,映射,表和图形使用
JSON/二进制JSON构造。文本和二进制格式的JData文件是
在语法上与JSON/UBJSON格式兼容,并且可以很容易地解析
使用现有的JSON和UBJSON解析器。JSONLab不仅仅是一个解析器和编写器
的JSON/UBJSON数据文件,但系统地转换复杂的科学
数据结构转换为人类可读且普遍支持的JSON表单
标准化的JData数据注释。

请在以下网址找到详细的联机帮助http://iso2mesh.sf.net/cgi-bin/index.cgi?jsonlab/Doc

==最新消息==

JSONLab v2.0——代码名为“Magnus Prime”——是JSONLab和JSONLab的稳定版本
一个迈向稳定、完整的参考实现的新里程碑
JData规范(http://openjdata.org)用于便携式科学数据存储。

自上一个版本以来,此版本添加了许多主要更新
2019年10月发布v1.9.8。下面总结了主要变化的列表
(带有*标记的关键特性),包括对' _ArrayShape_ '的支持
高效编码特殊矩阵,并添加' jsave/jload '保存
并在MATLAB/Octave中恢复变量,如“保存/加载”命令(实验性)。

= = = jsave。m = = =

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

= = = jload。m = = =

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

==其他更新

*更改jload和jsave的默认工作空间为caller
*创建' jdata '和' bjdata ' python模块与MATLAB共享数据
*增加savebj和loadbj,专门用于加载和保存bjdata
*添加单元测试脚本,修复测试单元中发现的问题
*加速fast_match_括号,下降unicode2native速度
*支持Toeplitz矩阵,使用不区分大小写的比较
*jdatadecode现在处理_ArrayOrder_
*在jsave和saveubjson中添加keeptype选项
*使jsave和jload工作在八度
*应用数据压缩字符串,新的数据类型char
*修复loadmsgpack ND数组问题
*添加jsave和jload用于便携式数据共享
*增加了对_ArrayShape_记录特殊矩阵的支持
*jsonlab与matlab R2008兼容
*saveubjson现在实现BJData规范Draft1,https://github.com/fangq/bjdata
*添加UseMap选项,以避免键名转换
*减少jsonopt调用,以加快编码和解码
*在savejson和saveubjson中启用jdataencode

化学式용양식

方倩倩(2023)。JSONLab:用于编码/解码JSON文件的工具箱(//www.ru-cchi.com/matlabcentral/fileexchange/33381-jsonlab-a-toolbox-to-encode-decode-json-files), MATLAB中央文件交换。검색됨

Matlab릴리스호환정보
개발환경:R2008a
모든릴리스와호환
플랫폼호환성
窗户 macOS Linux

世界杯预选赛小组名单社区寻宝

在MATLAB Central中找到宝藏,并发现社区如何帮助您!世界杯预选赛小组名单

开始狩猎!
버전 게시됨 릴리스정보
2.0.1

修复bjdata spec link

2.0

-增加单元测试脚本
-对字符串进行数据压缩
—添加jsave和jload用于可移植数据共享
—兼容R2008
-添加UseMap选项输出容器。地图
-支持BJData规格Draft 1
-添加_ArrayShape_保存特殊的矩阵

1.15.0.0

更新日志:
-更新文档,完成1.0
修复了savejson中严格遵守norow括号的bug

1.13.0.0

更新日志:
修复所有整数类型的UBSJON数据字节顺序
修复了GNU八度音阶的几个兼容性问题
-支持2D单元格和结构数组
-转义JSON字符串中的特殊字符
修复了保存UBSJON文件时的bug

1.12.0.0

-更新到jsonlab 1.0 beta版
修复loadubjson和saveubjson文件读写的bug

1.11.0.0

更新到1.0 alpha版本,包括用于读写通用二进制JSON文件的函数(saveubjson和loadubjson)

1.10.0.0

更新日志

- 2012/06/17 *无效前导字符的新格式,在savejson中解包十六进制代码
- 2012/06/01在savejson中支持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的license语句

1.9.8.1

-避免在savejson和saveubjson中双重展开arrayzipdata

1.9.8

- JData规范草案2的正式参考实现(http://github.com/fangq/jdata
-初始支持MessagePack
- nd array serialization from column-major->row-major
-支持LZMA/LZ4/LZHC压缩
支援图、表类对象

1.9

更新日志:

2012/02/28 loadjson引号转义错误,参见http://bit.ly/yyk1nS
2012/01/25补丁用于处理无根对象,由Blake Johnson贡献
-取消loadjson.m中的字符串转义
-支持zmat base64编码
-支持数据压缩
-支持功能句柄
-增加选项解析字符串数组或转换为字符
-在更新的matlab中,将字符串数组视为单元格数组
-在ubjson中保存64bit int

1.7.0.0

更新日志:
-2012/01/13在matlab中解析大型数据数组时,将loadjson加速20倍
-2012/01/11如果数组只有一个元素,则删除行括号
-2011/12/22 accept sequence of 'param',value input
-2011/11/18修复struct数组错误

1.5

-在saveubjson中使用Big-endian格式存储浮点数(d/ d
-加速解析大型非结构化数据
-使解析独立于空格
-允许解析同构元素数组
修复了在savejson中无法保存到文件的错误

1.3.0.0

更新日志:

2011/10/21修复了loadjson中的一个错误,以前的代码不使用任何加速
2011/10/20 loadjson支持JSON集合:可追加的JSON对象

1.2.0.0

savejson速度2倍(第17期)
修复文件名大小写错误(SVN rev#495)
添加SingletCell/SingletArray标志(Issue#15,#8)
修复文件名的bug (Pull#14)
修复cell数据移位的bug(拉12)
-导出matlab对象到JSON(拉#10,#11)
savejson速度2倍(第17期)
修复文件名大小写错误(SVN rev#495)
添加SingletCell/SingletArray标志(Issue#15,#8)
修复文件名的bug (Pull#14)
修复cell数据移位的bug(拉12)
-导出matlab对象到JSON(拉#10,#11)
savejson速度2倍(第17期)
修复文件名大小写错误(SVN rev#495)
添加SingletCell/SingletArray标志(Issue#15,#8)
修复文件名的bug (Pull#14)
修复cell数据移位的bug(拉12)
-导出matlab对象到JSON(拉#10,#11)
savejson速度2倍(第17期)
修复文件名大小写错误(SVN rev#495)
添加SingletCell/SingletArray标志(Issue#15,#8)
修复文件名的bug (Pull#14)
修复cell数据移位的bug(拉12)
-导出matlab对象到JSON(拉#10,#11)

1.1.0.0

-大量加速loadjson
-解析loadjson中的逻辑
-make选项不区分大小写
读取unicode编码的json文件
-允许在字符串的unicode中使用\uXXXX
-handle字符串中的转义字符
-实现UBJSON的Draft12新名称格式

Baidu
map