2

我在 Matlab 中开发一个应用程序,它使用 NET.addAssembly 调用一个 C# dll 来分析文件。我在 Matlab 中创建了一个结构,其中包含要分析的文件类型的一些特征:

File = struct('Name','File Name','HeaderLines',14,'ColName','ID','ColIdx',[]...);

我想将此结构发送到我的 C# dll,它将读取文件并填充结构的一些功能并将其发送回 Matlab。

有可能这样做吗?因为目前我收到错误:“没有找到匹配签名的方法'xxx'。

您能否确认 Matlab 结构在 NET 中是否兼容?哪个对象更适合这个目的?我在哪里可以找到示例 Matlab - NET 程序集?

4

2 回答 2

1

如果要将结构从 matlab 发送到 c#,可以在 c# 程序集中声明它。然后您可以在 matlab 中创建此结构类型的新引用,填充它,并将其发送到 ac# 函数

于 2012-12-20T13:20:44.103 回答
0

您不能将 MATLAB 结构传递给 .NET 程序集的方法。将相关信息存储在 MATLAB 数组或元胞数组中,并设计您的 C# 以接受这种形式的信息。

有关使用 MATLAB 中的 .NET 库的示例,请参阅文档部分用户指南->外部接口->使用 MATLAB 中的 .NET 库,尤其是 和 部分Handling .NET Data in MATLABUsing Arrays with .NET Applications其中介绍了如何将数据传入和传出 .NET 程序集。

于 2012-12-20T13:14:33.250 回答