【问题标题】:How to get the Matlab workspace associated with the current Matlab project in C#?如何在 C# 中获取与当前 Matlab 项目关联的 Matlab 工作区?
【发布时间】:2013-09-04 23:49:30
【问题描述】:

我使用 Matlab 编译器部署工具生成了一个可以在 .net 中引用的编译项目(生成一个 dll)。 在 .net 项目中,我通过 dll 调用 Matlab 的函数,我得到了结果。但我想获得 Matlab 的当前工作区。这可能吗? 任何的想法? 我正在使用 Visual Studio 2010 和 Matlab R2009b。

这是代码的一部分:

Using MatlabPackageNative;

public static MatlabPackageNative.Files Matlab;
Matlab.initialVariables();
Matlab.function1();
Matlab.function2();

【问题讨论】:

  • 不确定是否适用,但最好重新组织代码以避免使用基础工作区中定义的全局变量和变量。这样你的功能就会是独立的......只是一个想法:)

标签: c# visual-studio-2010 matlab matlab-deployment matlab-compiler


【解决方案1】:

我已经有了解决办法,方法是下一个:

  1. 创建一个 .m 文件(例如 SaveWorskpace.m)包含此信息:

    save test.mat
    
  2. 使用 Matlab 编译器部署工具在项目中添加 SaveWorskpace.m。

  3. 使用 Matlab 编译器部署工具编译项目
  4. 在c#项目中添加引用
  5. 调用函数SaveWorkspace()
  6. 准备好,变量保存在工作区 test.mat 中

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-07-11
    • 1970-01-01
    • 1970-01-01
    • 2018-08-19
    • 2014-03-10
    • 2018-04-17
    • 1970-01-01
    • 2013-02-26
    相关资源
    最近更新 更多