Standalone (compiled) program reading external files

12 visualizzazioni (ultimi 30 giorni)
Hi,
I currently have a program running in Matlab that uses 'textscan' to read several .csv files located in the same directory as the main program and use the data it obtains from them.
When I export this as a standalone program using the Matlab Compiler I have to include these files within the "shell" of the application. Is there a way getting a compiled program to read files stored within its directory (as the "pre compiled" version did) such that when they are updated with new data the program uses this updated data?
(This is necessary as my end users need access to these csv files but do not have Matlab).
Thanks in advance.
  4 Commenti
harry
harry il 24 Giu 2014
filename = 'MASTER.csv';
fid = fopen(filename);
T = textscan(fid, '%s%s%s%s%s%f%f%f%f%f%f','Delimiter',',','headerlines',1,'TreatAsEmpty', '#DIV/0!');
fclose(fid);
harry
harry il 24 Giu 2014
ahh realise those pwd and fullfile were links to help files. (Question still stands though).

Accedi per commentare.

Risposta accettata

José-Luis
José-Luis il 24 Giu 2014
Maybe something like this:
filename = fullfile('/path/to/files','MASTER.csv');
fid = fopen(filename)
  3 Commenti
José-Luis
José-Luis il 24 Giu 2014
Modificato: José-Luis il 24 Giu 2014
Please accept the answer that best solves your problem.
direc = pwd
is redundant. You could do:
filename = fullfile(pwd,'MASTER.csv');
But even then, I don't really follow. If the files are in the working directory, you shouldn't need give the full path.

Accedi per commentare.

Più risposte (1)

Titus Edelhofer
Titus Edelhofer il 24 Giu 2014
Hi,
I'm not sure I fully understood the question. If you don't add the MASTER.csv during compilation, and have a call to fopen, then fopen will look in the current folder (which is the folder where the executable is). So if you have in one folder both the .csv and the yourprogram.exe, then everything should be fine ...?
If not, add a line
p = pwd
to find out, "where" you are when running the compiled application.
Titus

Categorie

Scopri di più su MATLAB Compiler in Help Center e File Exchange

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by