Find dictionary entries with value type from Java

3 次查看(过去 30 天)
Hi,
I am trying to execute from Java and through the feval function the following command:
engine.feval("find",dictionarySectionHandle, "-value", "-class", "Simulink.Parameter");
However I get the following error:
find.
'-value' is not a valid option to findobj.
In the documentation [Find Function] it specifies that we should call the find function on the list of entries but I have tested the function in MATLAB's command line (as follows) and it works fine.
find(dictionarySectionHandle, '-value','-isa', 'Simulink.Parameter')
What am I doing wrong?
Thanks
  3 个评论
Beatriz Sanchez
Beatriz Sanchez 2019-7-12
编辑:Beatriz Sanchez 2019-7-12
Thanks Fangjun,
Unfortunately, excuting with
find(dictionarySectionHandle, 'value','-isa', 'Simulink.Parameter')
still complains with the following error:
Error using Simulink.data.dictionary.Section/find
Incomplete parameter-value pair.
Fangjun Jiang
Fangjun Jiang 2019-7-12
编辑:Fangjun Jiang 2019-7-12
The document has an example syntax
foundEntries = find(myEntryObjs,'-value','-class','Simulink.Parameter')

请先登录,再进行评论。

回答(1 个)

Donn Shull
Donn Shull 2019-7-13
It appears that MATLAB is converting the java String arguments to MATLAB strings which is causing the error for example the pure MATLA, B command:
feval("find", dictionarySectionHandle, "-value", "-class", "Simulink.Parameter")
Error using Simulink.data.dictionary.Section/find
'-value' is not a valid option to findobj.
Produces the same error that your engine command does, while:
feval("find", dictionarySectionHandle, '-value', "-class", "Simulink.Parameter")
ans =
3×1 Entry array with properties:
Name
DataSource
LastModified
LastModifiedBy
Status
works. You might try the using:
valueArg = engine.feval('char', "-value");
engine.feval("find", dictionarySectionHandle, valueArg, "-class", "Simulink.Parameter")

类别

Help CenterFile Exchange 中查找有关 String 的更多信息

产品


版本

R2018b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by