所以我在我的c#代码中使用了matlab,但是当我使用日记时它将创建一个文件,但它将是emtpy。我发现了一个类似问题here,但我没有看到解决方案。
我的代码
MLApp.MLApp matlab = new MLApp.MLApp();
matlab.Execute("diary");
matlab.Execute("disp('heej')");
...
...
matlab.Execute("disp('heej')");
matlab.Execute("disp('heej')");
matlab.Execute("disp('heej')");
matlab.Execute("diary off");
如何使用c#应用程序中的日记?
答案 0 :(得分:0)
因此,当从C#应用程序运行时,它看起来似乎不是日记,但是您可以使用C#本身来保存Matlab为您提供的输出。我做了它,所以使用跟踪将输出发送到终端以及文本文件。
Trace.Listeners.Clear();
TextWriterTraceListener twtl = new TextWriterTraceListener(pathBuildDir + @"\log.txt");
twtl.Name = "TextLogger";
twtl.TraceOutputOptions = TraceOptions.ThreadId | TraceOptions.DateTime;
ConsoleTraceListener ctl = new ConsoleTraceListener(false);
ctl.TraceOutputOptions = TraceOptions.DateTime;
Trace.Listeners.Add(twtl);
Trace.Listeners.Add(ctl);
Trace.AutoFlush = true;
MLApp.MLApp matlab = new MLApp.MLApp();
Trace.WriteLine(matlab.Execute("pwd"));
Trace.WriteLine(matlab.Execute(@"run('foobar.m')"));
...
...