我对MATLAB编程很陌生,遇到了一些麻烦:
我想调用dSPACE MLIB libriary函数。根据他们的样本,它需要一个字符串数组作为参数:
variables = {'Model Root/Spring-Mass-Damper System/Out1';...
'Model Root/Signal\nGenerator/Out1'};
libFunction(variables);
将此变量传递给函数。我现在的问题是:我有一个前端应用程序,用户可以从一个应该传递给matlab函数的任意数量的字符串中进行选择。由于前端是用Java编写的,因此传入数据的类型是java.lang.String []。 如何将java字符串数组转换为与上面的示例变量具有相同类型的字符串(我认为它是一个单元格数组的单元格数组,或者像那样)。
提前致谢!
答案 0 :(得分:6)
查看文档。 MATLAB可以很容易地与Java类型进行转换。
您可以在MATLAB中将Java字符串数组转换为单元格或字符数组。使用单元格数组甚至可以使用锯齿状数组(Java中允许使用)。
以下是两个简单的例子:
%# Preparing a java.lang.String[] to play with.
a = javaArray('java.lang.String',10);
b = {'I','am','the','very','model','of','a','modern','major','general'};
for i=1:10; a(i) = java.lang.String(b{i}); end;
%# To cell array of strings. Simple, eh?
c = cell(a);
%# To char array. Also simple.
c = char(a);