Grab a file without writting full name
Show older comments
I want to grab a file that is always located in same folder that starts with the name "Target" and ends with ".hex" but in front of Target there is a version number that can change.
In the following line you can see I'm trying to use the " * " to pick up any file. But this doesn't work. Anyone can help me how to do this?
firmwareFile = [basePath{1} '..\binaries\Target*.hex'];
Answers (1)
Kevin Holly
on 19 Oct 2022
Edited: Kevin Holly
on 19 Oct 2022
Can you try this?
folder = [basePath{1},filesep,'binaries']; % I'm assuming this is the folder location
firmwareFiles = dir(fullfile(folder,'Target*.hex'))
11 Comments
Paulo Correia
on 19 Oct 2022
Kevin Holly
on 19 Oct 2022
What is basePath{1}?
Paulo Correia
on 19 Oct 2022
Kevin Holly
on 19 Oct 2022
You can access the file names with:
firmwareFiles.name
Access the first one as such:
firmwareFiles(1).name
Paulo Correia
on 19 Oct 2022
Kevin Holly
on 19 Oct 2022
What line is giving you the error?
Paulo Correia
on 19 Oct 2022
Hmm...
I'm not sure how you are getting an error there. Are you sure that is the right line or is it written different in your code?
basePath = extractBetween('This is a test character array','a ',' character');
folder = [basePath{1},filesep,'binaries']
Paulo Correia
on 19 Oct 2022
Paulo Correia
on 20 Oct 2022
Kevin Holly
on 20 Oct 2022
To detect if it is empty:
isempty(firmwareFiles)
To detect how many files were detected:
size(firmwareFiles,1)
Categories
Find more on Environment and Settings 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!