我想用 C# 方法在 MATLAB 命令窗口中写一行。这是.NET 代码:
using System;
namespace SharpLab {
public class Test {
public void Run() {
dynamic Matlab = Activator.CreateInstance(Type.GetTypeFromProgID("Matlab.Application"));
Matlab.Execute("clc"); // This line does work.
Matlab.Execute("disp('Hello world!')"); // This line does not work.
}
}
}
现在我加载库,创建一个类实例并运行该方法。这是 MATLAB 代码:
disp('This message goes to the command window. Can .NET call clc?');
NET.addAssembly('SharpLab.dll');
Test = SharpLab.Test;
Test.Run();
这确实会运行,并且命令窗口会被 clc 清除。第二个电话“Hello world!”不起作用。
如何在 MATLAB 命令窗口中从 C# 打印消息?
编辑:我收到一条链接到http://www.mathworks.nl/support/solutions/en/data/1-C9Y0IJ/index.html?product=SL&solut=的消息。该解决方案将所有书面信息收集到一个变量中以供使用,但是我正在运行的真正功能确实可以工作大约一分钟,中间有很多消息。在扔文字墙之前等待一分钟不是我想要的。