"Error using feof" at exit

2 次查看(过去 30 天)
Marie
Marie 2016-5-10
编辑: Marie 2016-5-11
I am running 2016a, but I had a similar problem with 2014a also. When I try to close MATLAB, I get the following errors:
*******************************************
Error using feof
Invalid file identifier. Use fopen to generate a valid file
identifier.
Error in preserve_history (line 12)
while ~feof(fid)
Error in finish (line 3)
preserve_history;
*******************************************
I did a quick google search, but did not find anything related. The only way I've been able to close the program is to force-quit through the task manager.
Any insight would be greatly appreciated.

采纳的回答

Walter Roberson
Walter Roberson 2016-5-10
Use
which finish
to find the finish.m that is being executed. It is probably calling upon preserve_history from http://www.mathworks.com/matlabcentral/fileexchange/9291-save-entire-command-history . That code is using fopen() to open a file and is not checking to see if the open worked.
The code directly from the File Exchange uses
[fid, err] = fopen('c:\documents and settings\snelljo\application data\mathworks\matlab\r14sp3\history_saved.m', 'r');
but chances are you do not happen to have exactly that directory.
  1 个评论
Marie
Marie 2016-5-11
编辑:Marie 2016-5-11
Hmm. That is interesting.
Not only do I not have the directory it is looking for, but any of the files (e.g., history_saved.m) either. Perhaps it would be best to just delete the folder and see what happens (I have a back up).
...
Deleting the history folder fixed the problem. Hopefully, I didn't create a new one by doing that, but I don't actually recall why I wanted that function. Thanks!

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Low-Level File I/O 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by