Compiled Location of Data Files
1 次查看(过去 30 天)
显示 更早的评论
I have a compiled "program" (GUI) that relies on data files. However, to get the progbram to read the data files, I need to include them in the compile. I am using an fopen() on the data file, but if it is not included in the compile, the files are not found. I would like to not have to include the files, as they change pretty regularly and I do not want to have to recompile each time.
0 个评论
采纳的回答
Walter Roberson
2012-12-11
The current directory of a compiled executable is not what you might expect. If you specify the full directory of the files when you fopen() then it should be able to find them.
3 个评论
Image Analyst
2012-12-11
Like Walter said, you don't. Don't store the data files where the executable was deployed because that's not the real executable. The real executable is in a different folder - one you wouldn't expect. The executable you're seeing is more like a self-extracting archive and it unpacks the real executable plus a bunch of other files to some secret folder. You're far, far better off storing your data files in some known folder, like in c:\ProgramData\MATLAB\YOUR_GUI or wherever. Then use fullfile() and exist() to check for them. You can store the last folder you looked to for those files in a mat file if you want, then you can read that upon startup to initialize the data folder to the last folder you used.
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!