How can I use fullfile with cell arrays

14 views (last 30 days)
[filename, pathname]=uigetfile('MultiSelect','on','*.dat')
f = fullfile(pathname,filename)
filename =
Columns 1 through 5
[1x60 char] [1x60 char] [1x60 char] [1x60 char] [1x60 char]
Columns 6 through 10
[1x60 char] [1x60 char] [1x60 char] [1x60 char] [1x60 char]
Columns 11 through 12
[1x60 char] [1x60 char]
pathname =
C:\Documents and Settings\
??? Undefined function or method 'eq' for input arguments of type 'cell'.
Error in ==> fullfile at 37 if (f(end)==fs) && (part(1)==fs),
Error in ==> load at 3 f = fullfile(pathname,filename)
I'm trying to get the pathname and filename of a set of dat files from a single directory, and want to use fullfile to connect the names together. But I get the above error. Thank you in advance.

Accepted Answer

Walter Roberson
Walter Roberson on 6 May 2013
f = cellfun(@(S) fullfile(pathname, S), filename, 'Uniform', 0);
  2 Comments
John Ettikkalayil
John Ettikkalayil on 22 May 2013
Edited: John Ettikkalayil on 22 May 2013
Thanks Walter! This is what I was looking for in order to display full file paths of multiple files users selected.
f = cellfun(@(S) fullfile(pathname, S), filename, 'Uniform', 0);
disp('User Multi-Selected: ')
disp(f(:))
Walter Roberson
Walter Roberson on 22 May 2013
If your problem is solved please mark an answer as Accepted.

Sign in to comment.

More Answers (1)

Jan
Jan on 6 May 2013
if pathname(end) == filesep
f = strct({pathname}, filename);
else
f = strct({pathname}, {filesep}, filename);
end
  2 Comments
William
William on 7 May 2013
Sorry I don't really understand what you did here
Jan Siegmund
Jan Siegmund on 5 Jul 2020
strct should be strcat i suppose

Sign in to comment.

Categories

Find more on File Name Construction in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!