For stand-alone exe, how do I include a folder of files and know how to access them.

12 次查看(过去 30 天)
I have a folder of files I have added to a stand-alone exe. I have been using Desktop->WindowsStandAloneApplication -> Build. There is a link to add files or directories. I have added a folder which has my data files. However, I don't know how to access them. I have tried
if isdeployed
mydir = ctfroot ;
myfile = 'myfile.dat';
fid=fopen([mydir, myfile]);
else
...
end
but it doesn't find the file.

采纳的回答

Friedrich
Friedrich 2013-1-18
编辑:Friedrich 2013-1-18
Hi,
everything you add to your project will keep the same folder hierachy. So lets say you have a folder called myfolder and in there a file called myfile.dat. Then you would need to do:
if isdeployed
fid = fopen(fullfile(ctfroot,'myfolder','myfile.dat'))
end
You can also compile once and not embed the CTF. After compilation, open the ctf file in some zip programm and take a look at the folder structure.

更多回答(2 个)

owr
owr 2013-1-18
When you concatenate strings using "[...]" the way you wrote above you are missing the "\" between the file name and path (on Windows at least):
mydir = ctfroot ;
myfile = 'myfile.dat';
[mydir, myfile]
ans =
C:\Program Files\MATLAB\R2012amyfile.dat
This would work better:
mydir = ctfroot ;
myfile = 'myfile.dat';
[mydir,'\',myfile]
ans =
C:\Program Files\MATLAB\R2012a\myfile.dat
But Friedrich's suggestion above to use "fullfile" is a cleaner more robust solution to accomplish the same thing.

sara selim
sara selim 2015-5-24
Hi , i have the same problem i tried alot of solution but all of them were wrong , can you tell me how you have solved your problem ?

类别

Help CenterFile Exchange 中查找有关 MATLAB Compiler 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by