"delete" does not find a file?

23 views (last 30 days)
Why wouldn't this work:
if isfile(filename)
delete filename
end
filename is a char vector.
File is not deleted, and I get a warning: Warning: File 'filename' not found.
How could it be not found if isfile returned true? Am I doing some beginer mistake?
  2 Comments
Stephen23
Stephen23 on 13 May 2020
"Why wouldn't this work: "
Because you are using outdated, misleading, sadly overused command syntax.
Use function syntax instead.
Danijel Domazet
Danijel Domazet on 13 May 2020
Will do, thanks.

Sign in to comment.

Accepted Answer

Walter Roberson
Walter Roberson on 13 May 2020
if isfile(filename)
delete(filename)
end
  2 Comments
Walter Roberson
Walter Roberson on 13 May 2020
Look at the example,
delete *.mat
That is not going to ask MATLAB to look at all variables that are in scope and see if they are structs with field named mat, or objects with property named mat, or objects with method named mat, and then evaluate as appropriate in order to get the names of the files to delete. NOT done.
Instead it is treated as
delete('*.mat')
which tells it to delete all files in the current directory whose extension is .mat

Sign in to comment.

More Answers (0)

Categories

Find more on Software Development Tools in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!