相关疑难解决方法(0)

如何关闭错误后保持打开的文件?

我在用

fid = fopen('fgfg.txt');
Run Code Online (Sandbox Code Playgroud)

打开一个文件.

有时在我设法关闭文件之前发生错误.在关闭Matlab之前,我无法对该文件做任何事情.

如果发生错误,如何关闭文件?

file-io matlab

30
推荐指数
2
解决办法
2万
查看次数

尝试...最终在Matlab中等效

可能重复:
如何以异常安全的方式处理MATLAB中的资源?(比如"试试......终于")

我用这种方式使用Matlab并行计算工具箱:

matlabpool open 

parfor …

matlabpool close
Run Code Online (Sandbox Code Playgroud)

如果发生错误parfor,则程序终止,并且matlabpool未关闭.当我修复错误并再次运行它时,matlabpool open失败,因为它已经打开.所以我需要手动关闭它,这是我永远忘记的.理想的方法是将其更改为(伪代码):

matlabpool open 
try
  parfor …
finally
  matlabpool close
end
Run Code Online (Sandbox Code Playgroud)

这有什么最好的做法吗?

error-handling matlab

11
推荐指数
1
解决办法
4897
查看次数

如何在matlab中关闭文件句柄?

我的matlab代码创建了一个新文件,并在其中写入了一些内容.我使用fclose()来释放文件句柄但由于某些原因,当我尝试在程序完成执行后删除创建的文件时,我得到一个正在使用的文件错误.关闭matlab后,可以删除该文件.

问题不是永久性的.我再次尝试了相同的事情,没有任何改变,它的工作原理.

matlab file

10
推荐指数
2
解决办法
1万
查看次数

MATLAB有退出事件吗?

有没有办法知道MATLAB什么时候退出?我想做一些工作,例如,发布一些资源,打印一些日志......我可以在某些类的析构函数中添加一些代码.但由于我们无法确定MATLAB调用析构函数的顺序,我不确定哪一个是最后一个,所以我可以释放资源.

如果存在这样的事件,我们可以将任何回调注册到MATLAB退出事件吗?

matlab

5
推荐指数
2
解决办法
322
查看次数

无法删除Matlab创建的文件

可能重复:
如何以异常安全的方式处理MATLAB中的资源?(比如"try ... finally")
如何关闭错误后保持打开的文件?

我通过fopen和创建一些文件和目录mkdir,并fclose在完成文件写入后用适当的命令关闭所有打开的流.然而,当我用Ctrl+ 中止计算时,C这些目录/文件以某种方式保留在内存中,我无法删除它们.即使后续close all调用也没有释放它们,我必须退出Matlab来释放这些文件.知道我怎么能反击这种行为(除了'停止使用中止')?

系统是:Win7 64bit,Matlab R2011b.

file-io matlab

3
推荐指数
1
解决办法
2722
查看次数

标签 统计

matlab ×5

file-io ×2

error-handling ×1

file ×1