create_missing = false;
parts = {'C:\', 'Users', 'user', 'Documents', 'mu'};
if ~exist(parts{1}, 'dir')
error('You do not have a C: drive. Giving up.');
end
failed = false;
for K = 2 : length(parts)
thispath = fullfile(parts{1:K});
if exist(thispath, 'dir')
fprintf('Okay we already have directory %s\n', thispath);
elseif create_missing
try
mkdir(thispath);
fprintf('Was able to create missing directory %s\n', thispath);
catch
fprintf('Failed trying to create missing directory %s', thispath);
oldpath = fullfile(parts{1:K-1});
p = fileattrib(oldpath);
fprintf('Attributes of parent directory %s are:\n', oldpath);
disp(p);
failed = true;
break
end
else
fprintf('Directory %s does not exist and you asked that missing directories not be created. Set the variable create_missing to true if you want the directory created\n', thispath);
failed = true;
break
end
end
if failed
fprintf('Some directory not created. Not ready to use\n');
else
fprintf('Okay, should be ready to use directory %s\n', fullfile(parts{:}) );
end
Best Answer