使用变量进行结构访问时引用不存在的字段
Reference to non-existent field when using variable for struct access
我是 Matlab 的新手,也许是一个非常基本的问题,但我需要帮助:
我有一条路:
file = C:\this\is\path\to\my_file.mat
这是一个包含嵌套结构的文件,我只需要访问一个变量。在我的脚本中,首先我需要获取我稍后将用作变量的文件名:
[pathstr,name,ext] = fileparts(file);
所以,现在我有了变量 name,其内容为 my_file.mat
S = load(file)
value = S.('name').structA.SubstructA1.variableA
Matlab 正在生成消息:
"Reference to non-existent field 'name'."
那么,在这种情况下如何正确使用变量?
你已经很接近了,只需删除变量 name 周围的单引号,如下所示:
value = S.(name).structA.SubstructA1.variableA
我是 Matlab 的新手,也许是一个非常基本的问题,但我需要帮助:
我有一条路:
file = C:\this\is\path\to\my_file.mat
这是一个包含嵌套结构的文件,我只需要访问一个变量。在我的脚本中,首先我需要获取我稍后将用作变量的文件名:
[pathstr,name,ext] = fileparts(file);
所以,现在我有了变量 name,其内容为 my_file.mat
S = load(file)
value = S.('name').structA.SubstructA1.variableA
Matlab 正在生成消息:
"Reference to non-existent field 'name'."
那么,在这种情况下如何正确使用变量?
你已经很接近了,只需删除变量 name 周围的单引号,如下所示:
value = S.(name).structA.SubstructA1.variableA