在json文件中读取三维数组
34视图(30天)
显示旧的评论
你好,
我有麻烦与Matlab和从JSON文件读取数据。我基本上有一个. json文件是这样的:
{
“数据”:{
“1”:【
0.0,
0.1,
0.2,
0.3,
0.4,
0.5,
0.6,
0.7,
0.8,
0.9,
1.0
),
“2”:【
3.1517,
3.4879332128,
3.551222604,
3.5870886304,
3.6319243674,
3.6911242439,
3.7654878049,
3.8551335026,
3.960078832,
4.0803263235,
4.2158762895
),
“3”:【
3.4262,
3.5204004756,
3.5719092392,
3.6113550565,
3.6542077094,
3.7082794455,
3.777514335,
3.8639024635,
3.9684468861,
4.0916520841,
4.2337707085
]
}
}
然后我在Matlab代码尝试读取这个数据:
帧=“test.json”;
fid = fopen(帧);
生=从文件中读(fid,正);
str = char(原始的);
文件关闭(fid);
jsonData = jsondecode (str);
遗憾的是所有的数据然后在一维数组每个数据选项卡,但是我需要一个数组,这以后我可以用它“jsonData。(“1”)”。
错误在我的代码在哪里?还使用Matlab作为初你可以想我看我的问题。
0评论
答案(1)
Eshaan沙
2020年11月11日
编辑:Eshaan沙
2020年11月11日
你好,
我在MATLAB 19 b执行下面的代码,它似乎像预期的那样工作。
帧=“test.json”;
fid = fopen(帧);
生=从文件中读(fid,正);
str = char(原始的);
文件关闭(fid);
jsonData = jsondecode (str);
下面是jsonData的内容:
> > jsonData
jsonData =
结构体字段:
数据:[1×1结构]
> > jsonData.Data
ans =
结构体字段:
x1 (11:×1双)
x2 (11:×1双)
x3 (11:×1双)
为了正确地访问单个数组,您可以执行
jsonData.Data.x1
jsonData.Data.x2
jsonData.Data.x3
注意:我看到同样的行为在19个,19 b, 20和20 b。
1评论
Nitesh应
2021年4月26日
> >帧=“test.m”;
> > fid = fopen(帧);
> >生=从文件中读(fid,正无穷);
> > str = char(原始的);
> >文件关闭(fid);
> > jsonData = jsondecode (str);
> > jsonData
jsonData =
结构体字段:
数据(1×1结构):
> > jsonData.Data
ans =
结构体字段:
x1(11×1双):
x2(11×1双):
x3(11×1双):
> > jsonData.Data, x1
ans =
结构体字段:
x1(11×1双):
x2(11×1双):
x3(11×1双):
x1的未定义的函数或变量。
> > jsonData.Data.x1
ans =
0
0.1000
0.2000
0.3000
0.4000
0.5000
0.6000
0.7000
0.8000
0.9000
1.0000
> >