gpt4 book ai didi

matlab - 在 Matlab 中捕获实时命令窗口输出

转载 作者:太空宇宙 更新时间:2023-11-03 20:30:23 25 4
gpt4 key购买 nike

我在 Matlab 2012a 中使用 dos 函数执行命令:

[status,output] = dos('example.exe','-echo');

在执行期间,该命令在命令窗口中显示一个包含已处理百分比的字符串,我想使用此信息在 GUI 中创建一个 waitbar,但我无法使用它“在”执行期间。还有其他方法可以实时获取命令窗口内容吗?如果没有,我还能做些什么来为我的命令创建等待栏?

谢谢你的帮助

最佳答案

你不能用 MATLAB 的 dos(或相关的 systemunix)来做到这一点,因为它们(正如你已经注意到的) 是同步的,只有在应用程序完成后才返回。

您需要的是异步运行外部程序和您的waitbar 代码。这不能在纯 MATLAB 代码中完成,但可以使用 Java 来完成(可以直接从 MATLAB 中使用):

  1. 用 Java 编写一个类来运行您的程序并异步收集输出。参见 this answer on SO了解详情。

  2. 让您的 Java 类在读取新的输出数据时调用 MATLAB 回调。然后 MATLAB 回调可以更新等待栏。参见 this post on undocumentedmatlab.com了解更多信息。

关于matlab - 在 Matlab 中捕获实时命令窗口输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17478842/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com