gpt4 book ai didi

matlab - 无法关闭文本文件,因为 MATLAB 在执行失败后使用它

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

我从命令行窗口调用一个函数(包含 fopen 和 fclose),然后在 MATLAB 遇到我修复的错误后(程序运行时在我保存更正后停止),我想删除它创建的文件,为了重复这个过程。但是,不知何故,MATLAB 仍然打开文件并在命令行窗口中键入 fclose(f),不会使 MATLAB 释放文件。

function something(something)
f = fopen('something.txt', 'w');
%statments with fprintf
fclose(f);
end

最佳答案

您可能无法从函数外部访问句柄 f,在这种情况下您可以尝试 fclose('all')从 Matlab 命令窗口。

通常最好使用 try .. catch ...围绕使用文件的代码声明,以便在发生错误时始终调用 fclose 并释放句柄。

如果您仍然无法删除该文件,并且假设它没有被另一个进程锁定(例如,如果您在 Windows 记事本中从外部查看它),则可能是您正在从 Matlab 调用库函数并且共享库维护文件锁。在这种情况下,请尝试使用 unloadlibrary 重新加载库和 loadlibrary命令。

关于matlab - 无法关闭文本文件,因为 MATLAB 在执行失败后使用它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13336605/

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