How to delete all Files not listed in "FileName" variable?

7 visualizzazioni (ultimi 30 giorni)
Hello everybody,
I have the file lists to be kept and other files should be deleted from the folders.
I tried as below. and error occures that Error using delete, Name must be a text scalar.
Is there a way to delete the files not listed in "FileName" variable?
clear; close all; clc;
% viriable "FileName" is the image file to be kept.
% and other files not listed in "FileName" should be deleted.
FileName = ["q1.jpg";"q2.jpg";"q3.jpg"];
temp = table(FileName);
MyFolderInfo = dir(fullfile(pwd, '*'));
MyFolderInfo = MyFolderInfo(~ismember({MyFolderInfo.name},{'.','..'}));
fileList = string({MyFolderInfo.name});
noNeed = [];
for i=1:length(fileList)
if ~strcmp(fileList(i),FileName)
noNeed = [noNeed; fileList(i)];
end
end
F = fullfile(pwd,noNeed);
delete(F) % Errr occures of Error using delete, Name must be a text scalar.

Risposta accettata

Walter Roberson
Walter Roberson il 7 Dic 2022
Use
arrayfun(@delete, F)
  2 Commenti
Smithy
Smithy il 7 Dic 2022
Modificato: Stephen23 il 3 Gen 2023
It works perfectly. Thank you very much. I really appreciate with it.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Time Series Events in Help Center e File Exchange

Tag

Prodotti


Release

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by