Replacing "dir" when deploying a GUI
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
When turning a GUI into a standalone application i found out that the function "dir" i was using to get the names of the files in a folder, is not working. Using MATLAB Compiler i could add these files to the executable but i don't know how to get their names now i can't use this function, is there a similar one that works in a deployed code?
3 Kommentare
Akzeptierte Antwort
OCDER
am 26 Jul. 2018
Try this:
if isdeployed
a = dir(fullfile(ctfroot, '**', '*.xlsx')); %remove '**' if you know a precise folder location.
assert(~isempty(a), 'ERROR: Could not find a file at "%s".', fullfile(ctfroot, '**', '*.xlsx'))
else
a = dir(fullfile(my_root, '**', '*.xlsx')); %my_root is some other "main" dir of your codes
assert(~isempty(a), 'ERROR: Could not find a file at "%s".', fullfile(my_root, '**', '*.xlsx'))
end
2 Kommentare
OCDER
am 26 Jul. 2018
Since you already found the directory using dir, you could try this:
XlsFile = fullfile(a(1).folder, a(1).name)
winopen(XlsFile)
Or this could work if you know the exact excel file name because deployed applications has its own paths - so it should find the file for you.
winopen('XlsFileName.xlsx')
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu File Operations finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!