MATLAB: Conversion to cellstr from logical is not possible.

cell arraycellstr

Please, help on this.
axes(handles.axes1);
[fileName, pathName] = imgetfile();
if ischar(fileName); fileName = {fileName}; end
if ischar(pathName); pathName = {pathName}; end
cellstr(fileName);
cellstr(pathName);
filenames = fullfile(pathName, fileName);
I get the above error at cellstr(pathName) line.

Best Answer

imgetfile() does not return the pathname, instead, it returns the full file address in the first output argument. The second argument in the output pathName is not a char variable but a boolean variable. Therefore it gives the error that cannot convert from logical to cellstr. You can simply use it like this
[fileName, isCancelled] = imgetfile();
if ~isCancelled % it will not run if use press cancel button instead if choosing an image.
filenames = fileName;
% continue your code
end