我有一个具有大(工作)结构的m文件。经过大量的努力,我找到了一种用fprint等更新一些结构的方法。我保存了文件,保存后一切看起来都不错,但我想在函数中使用结构。
我可以运行m文件(存储结构) 运行(文件名) 演员= ANS;
但它一直不起作用,似乎是一种不好的方式。如果我写: Actor = IndataActor%indata文件的名称是IndataActor .. 它工作正常(Actor得到结构) 但我想使用变量“FileName” 演员=文件名
Actor刚刚获得了FileName的名称(Actor ='IndataActor')
有什么建议吗?
答案 0 :(得分:0)
结构保存在一个m文件中(作为一个函数)......
function [ Actor ] = IndataActorsLund3
%Actor 1
Actor{1}.Name='Räddningstjänsten Syd';
Actor{1}.ExpertNames={'Saknas?'};
Actor{1}.Units={'Saknas?'};
Actor{1}.Titles={'Saknas?'};
Actor{1}.NbrGoals=5;
Actor{1}.Goals={'Trygghet för medborgare', 'Bränder och andra olyckor ska minska','Öka kunskapen angående olyckshantering och riskmedvetenheten', 'Påbörja insats inom 10 minture i 90% av prioriterade olyckor', 'Bryta negativ trend vid insats inom 15min'};
Actor{1}.NbrActivities=6;
Actor{1}.Activities={'Tillsyn, remishantering','Informationsinsatser', 'Internutbildning', 'Externutbildning', 'Skadeavhjälpande insats', 'Olycksutredning','','','',''};
Actor{1}.MatrixActGoals=[...
3 4 3 4 3;
5 3 4 2 2;
3 3 1 4 5;
4 3 4 2 2;
5 1 1 5 5;
3 3 2 3 3];
Actor{1}.NbrInfluencingFlows=1;
Actor{1}.InfFlowType(1)=19;
Actor{1}.InfFlowMatrix{1}=[...
0 0 0 0 0 0 0;
0 0 0 0 0 0 0;
0 0 0 0 0 0 0;
0 0 0 0 0.4 0.6 1;
0 0 0 0 0.2 0.5 1;
0 0 0 0 0 0 0];
Actor{1}.NbrDependentFlows=4;
Actor{1}.DepFlowType(1)=1;
Actor{1}.DepFlowMatrix{1}=[...
0 0 0 0 0 0 0;
0 0 0 0 0 0 0;
0 0 0 0 0 0 0;
0 0 0 0.1 0.3 0.5 0.7;
0 0 0 0.6 0.8 0.9 1;
0 0 0 0 0 0 0];
.... (and about 1000 more rows)
end
比我创建了一个GUI(带GUIDE)来添加和更改结构中的数据。所以我在文件中读取并使用几个不同的fprint命令对文件进行更改。并且结构也被保存在m文件中,这已经被处理掉了。现在我不知道将结构赋给变量的最佳方法。