Error using rmdir when trying to remove folder

62 vues (au cours des 30 derniers jours)
Felix
Felix le 27 Oct 2014
Réponse apportée : db1024 le 12 Jan 2022
Hi,
I want to remove folders with data in it, unfortunately it doesn't work and I do not really find help in google. On some machines the deletion works, sometimes at least.
I'm using this code:
if( exist(filePath, 'dir') )
rmdir( filePath, 's' );
end
The variable filePath is of class char containing the text:
'C:\Temp\HBTFiles\Current\Output\CS_P1_REGTEST'
I'm receiving the message
Error using rmdir
No directories were removed.
which occurs on the line
rmdir( filePath, 's' );
I'm using Matlab R2012a and Windows7 and I have write permissions on the specified folder. The folder was created in Matlab also, without throwing errors. I wonder how it first recognizes that the folder exists, and when it wants to delete it, it is not able to do so.
Has somebody an idea?
Thanks
Felix

Réponse acceptée

per isakson
per isakson le 27 Oct 2014
If on Windows, an idea: cmd_rmdir
  1 commentaire
Felix
Felix le 27 Oct 2014
Thank you per.
with the command it works.
Regards
Felix

Connectez-vous pour commenter.

Plus de réponses (3)

Roy Talman
Roy Talman le 24 Juil 2017
Modifié(e) : Walter Roberson le 24 Juil 2017
Try to empty the folder first, you cal do it by:
A = dir( <Dir> )
for k = 1:length(A)
delete([ <Dir> '\' A(k).name])
end
rmdir( <Dir> )

Felix
Felix le 24 Juil 2017
Thanks Roy for your answer.
Unfortunatelly I do no longer have access to matlab, so I can't test that. But any other person finding this post, this might help :)
Regards, Felix

db1024
db1024 le 12 Jan 2022
I am using MATLAB R2021b Update 2.
I am facing the same issue in the file matlab.io.datastore.mixin.RemoteToLocalFile
function deleteIfLocalCopy(obj)
%DELETEIFLOCALCOPY This helper deletes the temporary local file
% if a local copy was created during construction.
if ~obj.LocalCopyCreated
return;
end
localTempDir = fileparts(obj.LocalFileName);
if exist(localTempDir, 'dir')
rmdir(localTempDir, 's');
end
obj.LocalCopyCreated = false;
end
in my local machine:
Operating System: Microsoft Windows 10 Enterprise Version 10.0 (Build 19042)
Java Version: Java 1.8.0_202-b08 with Oracle Corporation Java HotSpot(TM) 64-Bit Server VM mixed mode
Since RemoteToLocalFile is a built-in MATLAB function, I cannot use the propost solution.

Catégories

En savoir plus sur File Operations dans Help Center 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