how to delete mat file

i have saved a variable by using
save('fp_database.mat','data');
i want to delete this file so i tried
delete('fp_database.mat')
now even i load it by load('fpnn_database.mat');its values are displayed and not deleted
please tell how to delete it

4 commentaires

TAB
TAB le 2 Jan 2013
You are deleting fp_database.mat and loading fpnn_database.mat. They are 2 different files. Offcourse data will be loaded from fpnn_database.mat if it exist.
Pat
Pat le 2 Jan 2013
sorry its load('fp_database.mat');
José-Luis
José-Luis le 2 Jan 2013
Do you have read/write access to the folder where the file is located?
Pat
Pat le 2 Jan 2013
yes i have

Connectez-vous pour commenter.

 Réponse acceptée

Jan
Jan le 2 Jan 2013

1 vote

Using Matlab's posibility to search a file in the complete list of folders in the path leads to such strange effects. It is recommended to use absolute file names instead:
File = fullfile(cd, 'fp_database.mat');
save(File,'data');
...
delete(File);
disp(exist(File, 'file'))
The current directory can be modified by GUI or TIMER callbacks, such that absolute file names are more secure in general also.

2 commentaires

Image Analyst
Image Analyst le 2 Jan 2013
Modifié(e) : Image Analyst le 2 Jan 2013
I second Jan's suggestion. Using full filenames where you specify exactly what both the folder and the base filename is preferable. Robust code will make liberal use of fullfile() and exist(), and not use cd as per the FAQ. (Using cd like Jan did is fine, since it doesn't actually change the directory, but I use "pwd" in cases like that.) That way you always know exactly what folder you're looking in and what file you're dealing with and there are no uncertainties about what the current directory may be or what the search path may be.
Jan
Jan le 3 Jan 2013
All that's done inside pwd is calling cd without arguments.

Connectez-vous pour commenter.

Plus de réponses (2)

Azzi Abdelmalek
Azzi Abdelmalek le 2 Jan 2013
Modifié(e) : Azzi Abdelmalek le 2 Jan 2013

0 votes

Try this
a=1:10;
save('fp_database','a')
delete('fp_database.mat')
clear
load('fp_database')
a
Malcolm Lidierth
Malcolm Lidierth le 2 Jan 2013

0 votes

Looks like you have several copies in different folders on the MATLAB path. Delete only deletes the first. Try
which ('fp_database.mat')
after delete to find the 2nd.

Catégories

En savoir plus sur Software Development Tools dans Centre d'aide et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by