MATLAB 数据类型的 JSON 表示
JavaScript 对象表示法或 JSON 是一种基于文本的数据交换格式,可跨编程语言使用。由于 JSON 独立于编程语言,因此您可以在 JSON 中表示 MATLAB® 数据类型。使用 MATLAB 数据类型的 JSON 表示,您可以
表示客户端代码中的数据或变量,作为部署在服务器上的 MATLAB 函数的输入。
解析来自 MATLAB Production Server™ 实例的响应,以便在客户端代码中进行进一步操作。
来自服务器的响应包含一个 JSON array,其中数组的每个元素对应于已部署的 MATLAB 函数的一个输出,以 JSON object 表示。
您可以使用两种符号格式在 JSON 中表示 MATLAB 数据类型:small 和 large。
小符号提供了 JSON 中 MATLAB 数据类型的简化表示。MATLAB 数据类型与其对应的 JSON 表示之间存在一一映射。您可以使用小符号来表示标量和多维
double和logical数据类型、标量和 1×Nchar数据类型以及标量struct。大号表示法提供了 JSON 中 MATLAB 数据类型的通用表示。大格式使用由属性名称-值对组成的 JSON
object符号来表示数据。对于任何无法用小符号表示的 MATLAB 数据类型,您可以使用大符号表示法。MATLAB Production Server 的响应默认使用大写字母。
大表示法中的 JSON object 包含以下属性名称-值对。
| 属性名称 | 属性值 |
|---|---|
"mwdata" | JSON array 代表实际数据。通过将数据作为逗号分隔的列表括在 [] 内来指定属性值。 |
"mwsize" | JSON array 表示数据的维度。通过将维度作为逗号分隔的列表括在 [] 内来指定属性值。 |
"mwtype" | JSON "double" | "single" | "int8" | "uint8" | "int16" | "uint16" | "int32" | "uint32" | "int64" | "uint64" | "logical" | "char" | "struct" | "cell" | "string" | "datetime"| "<class name of enumeration>" |
"mwcomplex" | 对于复数,将属性值设置为 JSON true。 |
MATLAB Compiler SDK™ 提供了以下实用函数用于 MATLAB 和 JSON 之间的数据转换。
| 函数名称 | 目的 |
|---|---|
mps.json.encoderequest (MATLAB Compiler SDK) | 使用 MATLABMATLAB Production Server JSON 模式将服务器请求中的数据转换为 JSON 文本。 |
mps.json.decoderesponse (MATLAB Compiler SDK) | 将服务器响应的 JSON 文本转换为 MATLAB 数据。 |
mps.json.encode (MATLAB Compiler SDK) | 使用 MATLABMATLAB Production Server JSON 模式将数据转换为 JSON 文本。 |
mps.json.decode (MATLAB Compiler SDK) | 将 MATLAB Production Server JSON 模式中的字符向量或字符串转换为 MATLAB 数据。 |
RESTful API 支持以下 MATLAB 数据类型。
数值类型:double、single 和整数
mwdata属性必须是 JSON 数字的 JSON 数组。mwtype属性可以是double、single、int8、uint8、int16、uint16、int32、uint32、int64和uint64中的任意一个。您不能使用 JSON 小写符号表示标量或多维
single和整数类型。从 R2020a 开始,
int64和uint64数字在其 JSON 表示中保持精度和范围,因为它们不会转换为double。
标量数值类型:double、single 和整数
mwdata属性必须是一个 JSON 数组,其中包含一个表示 MATLAB 标量值的 JSON 数字。mwsize属性必须是包含 1,1 的 JSON 数组。
标量数值类型的 JSON 表示:double、single 和整数
| MATLAB 数据类型 | JSON 小表示法 | JSON 大表示法 |
|---|---|---|
| 没有小表示法 | {
"mwdata": [JSON number],
"mwsize": [1,1],
"mwtype": "single" | "int8" | "uint8" | "int16" | "uint16" |
"int32" | "uint32" | "int64" | "uint64"
}
|
double | JSON 数值 | {
"mwdata": [JSON number],
"mwsize": [1,1],
"mwtype": "double"
}
|
MATLAB 数据:标量数值 | JSON 小表示法 | JSON 大表示法 |
|---|---|---|
int8(23) | 没有小表示法 | {
"mwdata": [23],
"mwsize": [1,1],
"mwtype": "int8"
}
|
uint8(27) | 没有小表示法 | {
"mwdata": [27],
"mwsize": [1,1],
"mwtype": "uint8"
}
|
single(20.15) | 没有小表示法 | {
"mwdata": [20.15],
"mwsize": [1,1],
"mwtype": "single"
}
|
intmax('int64') | 没有小表示法 | {
"mwdata": [9223372036854775807],
"mwsize": [1,1],
"mwtype": "int64"
}
|
double(12.905) | 12.905 | {
"mwdata": [12.905],
"mwsize": [1,1],
"mwtype": "double"
}
|
42 | 42 | {
"mwdata": [42],
"mwsize": [1,1],
"mwtype": "double"
}
|
多维数值类型:double、single 和整数
mwdata属性必须是一个 JSON 数组,其中包含按列主序排列的多维数组数据。此顺序对应于 MATLAB 中的默认内存布局。使用小符号时,必须使用嵌套 JSON 数组来表示
double数组(N-by-1double数组除外)不能使用 JSON 小写符号表示多维
single和整数类型。
MATLAB 数据:多维 | JSON 小表示法 | JSON 大表示法 |
|---|---|---|
[1,2,3;... 4,5,6] | [[1,2,3],[4,5,6]] | {
"mwdata":[1,4,2,5,3,6],
"mwsize":[2,3],
"mwtype":"double"
} |
[1, NaN, -Inf;... 2, 105, Inf] | [[1,{"mwdata": "NaN"},{"mwdata": "-Inf"}],[2,105,{"mwdata": "Inf"}]] | {
"mwdata":[1, 2, "NaN", 105, "-Inf", "Inf"],
"mwsize":[2,3],
"mwtype":"double"
} |
[ 1 2; 4 5; 7 8 ] | [[1, 2], [4, 5], [7, 8]] | {
"mwdata":[1,4,7,2,5,8],
"mwsize":[3,2],
"mwtype":"double"
} |
a(:,:,1) =
1 2
3 4
5 6
a(:,:,2) =
7 8
9 10
11 12 | [[[1,7],[2,8]],[[3,9],[4,10]],[[5,11],[6,12]]] | {
"mwdata":[1,3,5,2,4,6,7,9,11,8,10,12],
"mwsize":[3,2,2],
"mwtype":"double"
} |
[17;500] | [17,500] | {
"mwdata":[17,500],
"mwsize":[2,1],
"mwtype":"double"
} |
[17,500] | [[17,500]] | {
"mwdata":[17,500],
"mwsize":[1,2],
"mwtype":"double"
} |
数值类型:NaN、Inf 和 -Inf
NaN、Inf和-Inf是数值类型,其底层 MATLAB 类只能是double或single。您不能将NaN、Inf和-Inf表示为 MATLAB 中的整数类型。
MATLAB 数据:NaN、Inf 和 -Inf | JSON 小表示法 | JSON 大表示法 |
|---|---|---|
NaN | {"mwdata":"NaN"} | {
"mwdata": ["NaN"],
"mwsize": [1,1],
"mwtype": "double"
}
或 {
"mwdata": [{"mwdata":"NaN"}],
"mwsize": [1,1],
"mwtype": "double"
}
|
Inf | {"mwdata":"Inf"} | {
"mwdata": ["Inf"],
"mwsize": [1,1],
"mwtype": "double"
}
或 {
"mwdata": [{"mwdata":"Inf"}],
"mwsize": [1,1],
"mwtype": "double"
}
|
-Inf | {"mwdata":"-Inf"} | {
"mwdata": ["-Inf"],
"mwsize": [1,1],
"mwtype": "double"
}
或 {
"mwdata": [{"mwdata":"-Inf"}],
"mwsize": [1,1],
"mwtype": "double"
}
|
数值类型:复数
mwdata属性值必须包含并排表示的复数的实部和虚部。您必须设置一个附加属性
mwcomplex,其值为true。mwtype属性可以是double、single、int8、uint8、int16、uint16、int32、uint32、int64和uint64中的任意一个。您不能使用小写符号来表示复数。
复数的 JSON 表示
| MATLAB 数据 | JSON 大表示法 |
|---|---|
a + bi | {
"mwcomplex": true,
"mwdata": [a,b],
"mwsize": [1,1],
"mwtype": "double"
}
|
| MATLAB 数据:标量复数 | JSON 大表示法 |
|---|---|
int32(3 + 4i) | {
"mwcomplex": true,
"mwdata": [3,4],
"mwsize": [1,1],
"mwtype": "int32"
}
|
| MATLAB 数据:复数多维数组 | JSON 大表示法 |
|---|---|
[1 - 2i;... 3 + 7i] | {
"mwcomplex": true,
"mwdata":[1, -2, 3, 7],
"mwsize":[2,1],
"mwtype":"double",
}
|
字符数组
mwdata属性必须是 JSONstrings数组。mwtype属性必须具有char的值。您可以用小符号表示标量字符和 1×N 字符数组。
无法以大符号表示多维字符数组。
char 的 JSON 表示
| MATLAB 数据类型 | JSON Small Notation(用于标量和一维字符数组) | JSON 大表示法 |
|---|---|---|
char | JSON string | {
"mwdata": [JSON string],
"mwsize": [<char dimensions>],
"mwtype": "char"
}
|
| MATLAB 数据:标量和一维字符数组 | JSON 小表示法 | JSON 大表示法 |
|---|---|---|
'a' | "a" | {
"mwdata": ["a"],
"mwsize": [1,1],
"mwtype": "char"
}
|
'hey, jude' | "hey, jude" | {
"mwdata": ["hey, jude"],
"mwsize": [1,9],
"mwtype": "char"
}
|
| MATLAB 数据:多维字符数组 | JSON 大表示法 |
|---|---|
['boston';... '123456'] | {
"mwdata": ["b1o2s3t4o5n6"],
"mwsize": [2,6],
"mwtype": "char"
}
|
逻辑型
mwdata属性必须仅包含 JSONtrue或false布尔值。对于多维logical数据,按列主顺序表示值。mwtype属性必须具有logical的值。在小写表示法中,您必须使用嵌套的 JSON 数组来表示多维
logical数组。
logical 的 JSON 表示
| MATLAB 数据类型 | JSON 小表示法 | JSON 大表示法 |
|---|---|---|
logical | true | false | {
"mwtype": "logical",
"mwsize": [1,1],
"mwdata": [true | false]
}
|
MATLAB 数据:标量 logical | JSON 小表示法 | JSON 大表示法 |
|---|---|---|
logical(1) 或 true | true | {
"mwdata": [true],
"mwsize": [1,1],
"mwtype": "logical"
}
|
logical(0) 或 false | false | {
"mwdata": [false],
"mwsize": [1,1],
"mwtype": "logical"
}
|
MATLAB 数据:多维 logical 数组 | JSON 小表示法 | JSON 大表示法 |
|---|---|---|
[true,false;... true,false;... true,false] | [[[true,false],[true,false],[true,false]]] | {
"mwdata": [true,true,true,false,false,false],
"mwsize": [3,2],
"mwtype": "logical"
}
|
元胞数组
mwdata属性必须是 JSONarray,其中包含 JSON 表示形式的元胞值。mwtype属性必须具有cell的值。您不能使用小写符号来表示
cell数组。MATLAB 数据类型 JSON 大表示法 cell{ "mwdata": [<cell data>], "mwsize": [<cell dimensions>], "mwtype": "cell" }尽管您必须仅使用大符号表示元胞数组,但如果
cell元素的数据类型支持小符号表示法,则可以在 JSON 中编码cell数组时以小符号表示该元素。下表显示了一个示例。
MATLAB 数据: cell数组JSON 大格式,其中包含一些小格式的 cell元素JSON 大号表示法,所有 cell元素均采用大号表示法{'Primes',[10 23 199],{false,true,'maybe'}}{ "mwdata": ["Primes", [[10, 23, 199]], { "mwdata": [false, true, "maybe"], "mwsize": [1, 3], "mwtype": "cell" } ], "mwsize": [1, 3], "mwtype": "cell" }{ "mwdata": [{ "mwdata": ["Primes"], "mwsize": [1, 6], "mwtype": "char" },{ "mwdata": [10, 23, 199], "mwsize": [1, 3], "mwtype": "double" },{ "mwdata": [{ "mwdata": [false], "mwsize": [1, 1], "mwtype": "logical" },{ "mwdata": [true], "mwsize": [1, 1], "mwtype": "logical" },{ "mwdata": ["maybe"], "mwsize": [1, 5], "mwtype": "char" }], "mwsize": [1, 3], "mwtype": "cell" }], "mwsize": [1, 3], "mwtype": "cell" }有关 MATLAB
cell数据类型的更多信息,请参阅cell(MATLAB)。
结构体数组
mwdata属性必须是包含名称-值对的 JSON 对象,其中名称与struct中的字段匹配,而值是表示字段中数据的 JSON 数组。mwtype属性必须具有struct的值。尽管您必须使用 JSON 大表示法来表示多维
struct数组,但如果struct值的数据类型支持小表示法,则可以在 JSON 中编码struct时以小表示法表示该值。您只能用小写符号表示标量
struct。struct数组的 JSON 表示MATLAB 数据类型 JSON 小符号(仅对标量 struct有效)JSON 大表示法 structJSON 对象 { "mwdata": {<struct data>} "mwsize": [<struct dimensions>], "mwtype": "struct" }MATLAB 数据:标量结构数组 JSON 小表示法 JSON 大表示法 struct('name','John Smith','age',15){ "name" : "John Smith", "age" : 15 }{ "mwdata": { "age": [{ "mwdata": [15], "mwsize": [1, 1], "mwtype": "double" }], "name": [{ "mwdata": ["John Smith"], "mwsize": [1, 10], "mwtype": "char" }] }, "mwsize": [1, 1], "mwtype": "struct" }尽管您可以用小表示法表示 1×1 的
struct数组,但是如果struct值的数据类型不支持小表示法,则在 JSON 中编码struct时必须用大表示法表示该值。MATLAB 数据:1×1 结构体数组 JSON 小写符号,其中有一些 struct值采用大写符号JSON 大写符号,所有 struct值均采用大写符号表示struct('Name',{{'Casper','Ghost'}},... 'Age',{[14,17,18]},... 'Date', {736676}){ "Age": [[14, 17, 18]], "Date": 736676, "Name": { "mwdata": ["Casper", "Ghost"], "mwsize": [1, 2], "mwtype": "cell" } }{ "mwdata": { "Age": [{ "mwdata": [14, 17, 18], "mwsize": [1, 3], "mwtype": "double" }], "Date": [{ "mwdata": [736676], "mwsize": [1, 1], "mwtype": "double" }], "Name": [{ "mwdata": [{ "mwdata": ["Casper"], "mwsize": [1, 6], "mwtype": "char" }, { "mwdata": ["Ghost"], "mwsize": [1, 5], "mwtype": "char" }], "mwsize": [1, 2], "mwtype": "cell" }] }, "mwsize": [1, 1], "mwtype": "struct" }尽管您必须使用 JSON 大表示法来表示多维
struct数组,但如果struct值的数据类型支持小表示法,则可以在 JSON 中编码struct时以小表示法表示该值。MATLAB 数据:多维结构体数组 JSON 大写符号,其中有一些 struct值采用小写符号JSON 大写符号,所有 struct值均采用大写符号表示struct( 'Name',{'Casper','Ghost';... 'Genie' ,'Wolf'},... 'Ages',{14,17;... 20,23} ){ "mwdata":{ "Ages":[14,20,17,23], "Name":["Casper","Genie","Ghost","Wolf"] }, "mwsize":[2,2], "mwtype":"struct" }{ "mwdata":{ "Ages":[{ "mwdata":[14], "mwsize":[1,1], "mwtype":"double" },{ "mwdata":[20], "mwsize":[1,1], "mwtype":"double" },{ "mwdata":[17], "mwsize":[1,1], "mwtype":"double" },{ "mwdata":[23], "mwsize":[1,1], "mwtype":"double" }], "Name":[{ "mwdata":["Casper"], "mwsize":[1,6], "mwtype":"char" },{ "mwdata":["Genie"], "mwsize":[1,5], "mwtype":"char" },{ "mwdata":["Ghost"], "mwsize":[1,5], "mwtype":"char" },{ "mwdata":["Wolf"], "mwsize":[1,4], "mwtype":"char" }] }, "mwsize":[2,2], "mwtype":"struct" }有关 MATLAB
struct数据类型的更多信息,请参阅struct(MATLAB)。
字符串数组
mwdata属性必须是包含按列主顺序排列的字符串的 JSON 数组。mwtype属性必须具有string的值。您不能使用小型 JSON 符号表示
string数组。string数组的 JSON 表示MATLAB 数据类型 JSON 大表示法 string{ "mwdata": [JSON string], "mwsize": [<string dimensions>], "mwtype": "string" }MATLAB 数据:标量、一维、多维和
missing(MATLAB)string数组JSON 大表示法 "abc"{ "mwdata": ["abc"], "mwsize": [1, 1], "mwtype": "string" }["abc"]{ "mwdata": ["abc"], "mwsize": [1, 1], "mwtype": "string" }["abc" "de"]{ "mwdata": ["abc", "de"], "mwsize": [1, 2], "mwtype": "string" }["abc" "de"; "fg" "hi"]{ "mwdata": ["abc", "fg", "de", "hi"], "mwsize": [2, 2], "mwtype": "string" }string(missing){ "mwdata": [{"mwdata": "missing"}], "mwsize": [1, 1], "mwtype": "string" }有关 MATLAB
string数据类型的更多信息,请参阅string, " "(MATLAB)。
枚举
mwdata属性必须是一个表示枚举成员的字符串 JSON 数组。必须将
mwtype属性设置为数组中枚举的类。您无法使用小型 JSON 符号来表示
enumeration。enumeration的 JSON 表示MATLAB 数据类型 JSON 大表示法 enumeration{ "mwdata": [JSON string], "mwsize": [<enumeration dimensions>], "mwtype": "<class name of enumeration>" }下表显示了
enumeration的 JSON 表示示例。使用以下枚举作为示例。有关详细信息,请参阅定义枚举类 (MATLAB)。
classdef Colors enumeration Black Blue Red end endMATLAB 数据:枚举类的对象 JSON 大表示法 b = Colors.Black{ "mwdata": ["Black"], "mwsize": [1, 1], "mwtype": "Colors" }b = [Colors.Black Colors.Blue]{ "mwdata": ["Black", "Blue"], "mwsize": [1, 2], "mwtype": "Colors" }有关 MATLAB
enumeration数据类型的更多信息,请参阅enumeration(MATLAB)。
日期时间数组
mwdata属性必须是一个 JSON 对象,其中包含TimeStamp的名称-值对以及可选的LowOrderTimeStamp的名称-值对。TimeStamp和LowOrderTimeStamp的值是double数据类型的 JSON 表示。TimeStamp属性值表示自 1970 年 1 月 1 日 00:00:00 UTC(协调世界时)以来经过的 POSIX 时间(以毫秒为单位)。LowOrderTimeStamp属性值代表时间戳中的额外分辨率。使用此属性可以保持超过毫秒的精度。尽管您必须仅使用大表示法来表示
datetime数组,但由于TimeStamp和LowOrderTimeStamp表示支持小表示法的double数据类型的值,因此在 JSON 中编码TimeStamp数组时,您可以使用小表示法来表示LowOrderTimeStamp和datetime。
mwmetadata属性必须是包含TimeZone和Format的名称-值对的 JSON 对象。TimeZone和Format的值是char数据类型的 JSON 表示。TimeZone和Format属性的值包含以原始显示格式重新创建时区为 MATLAB 的datetime值所需的元数据。此元数据是必需的,因为TimeStamp和LowOrderTimeStamp数组中包含的数值是根据 UTC 计算的。您可以为
TimeZone和FormatNaT数组值指定Inf和datetime属性。尽管您必须仅使用大表示法来表示
datetime数组,但由于TimeZone和Format表示支持小表示法的char数据类型的值,因此在 JSON 中编码TimeZone数组时,您可以使用小表示法来表示Format和datetime。TimeZone的值可以为空。Format的默认值取决于您的系统区域设置。有关详细信息,请参阅默认 datetime 格式 (MATLAB)。
mwtype属性必须具有datetime的值。您不能使用小型 JSON 符号表示
datetime数组。datetime数组的 JSON 表示MATLAB 数据类型 JSON 大表示法 datetime{ "mwdata": { "LowOrderTimeStamp": <JSON number> "TimeStamp": <JSON number> }, "mwmetadata": { "TimeZone": <JSON string>, "Format": <JSON string> }, "mwsize": [<datetime array dimensions>], "mwtype": "datetime" }MATLAB 数据:标量 datetime数组JSON 大写表示法,小写表示法为 mwdata和mwmetadataJSON 大写符号,其中 mwdata和mwmetadata为大写符号datetime(2015, 3, 24);
{ "mwdata": { "TimeStamp": 1.4271552E+12 }, "mwmetadata": { "Format": "dd-MMM-uuuu", "TimeZone": "" }, "mwsize": [1, 1], "mwtype": "datetime" }{ "mwdata": { "TimeStamp": { "mwdata": [1.4271552E+12], "mwsize": [1, 1], "mwtype": "double" } }, "mwmetadata": { "Format": { "mwdata": ["dd-MMM-uuuu"], "mwsize": [1, 11], "mwtype": "char" }, "TimeZone": { "mwdata": [""], "mwsize": [0, 0], "mwtype": "char" } }, "mwsize": [1, 1], "mwtype": "datetime" }下表显示了
datetime行向量的 JSON 表示。由于LowOrderTimeStamp和TimeStamp包含double值,因此在以小写形式表示LowOrderTimeStamp和TimeStamp的多维(N-by-1 除外)数组时,需要使用嵌套 JSON 数组。MATLAB 数据: datetime行向量JSON 大写表示法,小写表示法为 mwdata和mwmetadataJSON 大写符号,其中 mwdata和mwmetadata为大写符号datetime(2018,1,8,10,... 11,12,(1:5)+(1:5)*1e-6,... 'TimeZone','local');
{ "mwdata": { "LowOrderTimeStamp": [[9.9999999991773336E-7, 1.9999999998354667E-6, 2.9999999999752447E-6, 3.9999999996709334E-6, 4.9999999998107114E-6]], "TimeStamp": [[1.515424272001E+12, 1.515424272002E+12, 1.515424272003E+12, 1.515424272004E+12, 1.515424272005E+12]], }, "mwmetadata": { "Format":"dd-MMM-uuuu HH:mm:ss", "TimeZone": "America\/New_York", }, "mwsize": [1, 5], "mwtype": "datetime" }{ "mwdata": { "LowOrderTimeStamp": { "mwdata": [9.9999999991773336E-7, 1.9999999998354667E-6, 2.9999999999752447E-6, 3.9999999996709334E-6, 4.9999999998107114E-6], "mwsize": [1, 5], "mwtype": "double" }, "TimeStamp": { "mwdata": [1.515424272001E+12, 1.515424272002E+12, 1.515424272003E+12, 1.515424272004E+12, 1.515424272005E+12], "mwsize": [1, 5], "mwtype": "double" } }, "mwmetadata": { "Format": { "mwdata": ["dd-MMM-uuuu HH:mm:ss"], "mwsize": [1, 20], "mwtype": "char" }, "TimeZone": { "mwdata": ["America\/New_York"], "mwsize": [1, 16], "mwtype": "char" } }, "mwsize": [1, 5], "mwtype": "datetime" }MATLAB 数据: datetime列向量JSON 大写表示法,小写表示法为 mwdata和mwmetadataJSON 大写符号,其中 mwdata和mwmetadata为大写符号datetime(2018,1,8,10,... 11,12,(1:5)+(1:5)*1e-6,... 'TimeZone','local')';
{ "mwdata": { "LowOrderTimeStamp": [9.9999999991773336E-7, 1.9999999998354667E-6, 2.9999999999752447E-6, 3.9999999996709334E-6, 4.9999999998107114E-6], "TimeStamp": [1.515424272001E+12, 1.515424272002E+12, 1.515424272003E+12, 1.515424272004E+12, 1.515424272005E+12], }, "mwmetadata": { "Format":"dd-MMM-uuuu HH:mm:ss", "TimeZone": "America\/New_York", }, "mwsize": [5, 1], "mwtype": "datetime" }{ "mwdata": { "LowOrderTimeStamp": { "mwdata": [9.9999999991773336E-7, 1.9999999998354667E-6, 2.9999999999752447E-6, 3.9999999996709334E-6, 4.9999999998107114E-6], "mwsize": [5, 1], "mwtype": "double" }, "TimeStamp": { "mwdata": [1.515424272001E+12, 1.515424272002E+12, 1.515424272003E+12, 1.515424272004E+12, 1.515424272005E+12], "mwsize": [5, 1], "mwtype": "double" } }, "mwmetadata": { "Format": { "mwdata": ["dd-MMM-uuuu HH:mm:ss"], "mwsize": [1, 20], "mwtype": "char" }, "TimeZone": { "mwdata": ["America\/New_York"], "mwsize": [1, 16], "mwtype": "char" } }, "mwsize": [5, 1], "mwtype": "datetime" }MATLAB 数据:
NaT和Infdatetime数组JSON 大写表示法,小写表示法为 mwdata和mwmetadataJSON 大写符号,其中 mwdata和mwmetadata为大写符号NaT
{ "mwdata": { "TimeStamp": { "mwdata": "NaN" } }, "mwmetadata": { "Format": "dd-MMM-uuuu HH:mm:ss", "TimeZone": "" }, "mwsize": [1, 1], "mwtype": "datetime" }{ "mwdata": { "TimeStamp": { "mwdata": ["NaN"], "mwsize": [1, 1], "mwtype": "double" } }, "mwmetadata": { "Format": { "mwdata": ["dd-MMM-uuuu HH:mm:ss"], "mwsize": [1, 20], "mwtype": "char" }, "TimeZone": { "mwdata": [""], "mwsize": [0, 0], "mwtype": "char" } }, "mwsize": [1, 1], "mwtype": "datetime" }datetime(inf,inf,inf)
{ "mwdata": { "TimeStamp": { "mwdata": "Inf" } }, "mwmetadata": { "Format": "dd-MMM-uuuu HH:mm:ss", "TimeZone": "" }, "mwsize": [1, 1], "mwtype": "datetime" }{ "mwdata": { "TimeStamp": { "mwdata": ["Inf"], "mwsize": [1, 1], "mwtype": "double" } }, "mwmetadata": { "Format": { "mwdata": ["dd-MMM-uuuu HH:mm:ss"], "mwsize": [1, 20], "mwtype": "char" }, "TimeZone": { "mwdata": [""], "mwsize": [0, 0], "mwtype": "char" } }, "mwsize": [1, 1], "mwtype": "datetime" }有关 MATLAB
datetime数据类型的更多信息,请参阅datetime(MATLAB)。
空数组:[]
空数组
[]不能是struct类型。
| MATLAB 数据:空数组 | JSON 小表示法 | JSON 大表示法 |
|---|---|---|
[] | [] | {
"mwdata": [],
"mwsize": [0,0],
"mwtype": "double" | "single"
"int8" | "uint8" | "int16" | "uint16"
"int32" | "uint32" | "int64" | "uint64"
"logical" | "char" | "cell" | "string"
"<class name of enumeration>"
}
|