Error using fileparts with Datastore
Show older comments
I found an official Matlab tutorial on youtube and tried to rebuild it, but i got a Syntax Error and don't know how to solve it.
The link to the tutorial: https://youtu.be/K-ob5DIfE7U
My Code so far

So my question: how can i solve this Error? Why is it working in the Video?
Thank you in advance!
Greetings
B. Rebmann
Answers (2)
Jan
on 9 Dec 2021
Try:
[~, filenames] = fileparts(cellstr(ds.Files))
But actually this should work. Which Matlab version are you using? spreadsheetDatastore was introduces in R2016a. I do not remember if fileparts worked with arrays in this version. If not, create your own function to do this:
function [Folder, File, Ext] = filepartsX(FilePath)
FilePath = cellstr(FilePath);
Folder = cell(size(FilePath));
File = cell(size(FilePath));
Ext = cell(size(FilePath));
for k = 1:numel(FilePath)
[Folder{k}, File{k}, Ext{k}] = fileparts(FilePath{k});
end
end
1 Comment
Bartholomäus Jan Rebmann
on 10 Dec 2021
Steven Lord
on 9 Dec 2021
0 votes
I believe ds.Files returns a cell array or a string array of file names. Support for a cell array of file names or a string array of file names in fileparts was introduced in release R2020b as stated in the Release Notes.
1 Comment
Bartholomäus Jan Rebmann
on 10 Dec 2021
Categories
Find more on Introduction to Installation and Licensing 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!