Accessing variables in m file without executing it

12 visualizaciones (últimos 30 días)
Pavan
Pavan el 10 de Ag. de 2017
Respondida: Jan el 10 de Ag. de 2017
I have a .m file that will only run as part of a giant program. However, I want to access some variables in it without running this program. Is this possible?
  1 comentario
Stephen23
Stephen23 el 10 de Ag. de 2017
"Is this possible?"
possible: yes.
good idea: no.
Basically you will have to write your own code parser. It would be better to write your code so that those variables are stored/saved somewhere more accessible (e.g. a .mat file, a CSV file, a function that defines parameter values, etc.).

Iniciar sesión para comentar.

Respuesta aceptada

Jan
Jan el 10 de Ag. de 2017
I agree with Stephen, but have a slughtly more pessimistic opinion:
No, it is not possible, at least not in the general case. You could parse the file and recognize some trivial definitions like:
a = 10;
But as soon as it gets more complex, you need a sophisticated parser. Of course you can create such a parser, but this would be a duplicate of Matlab. And even then the code must be interpreted to get all values, e.g. in:
a = 10;
b = a;
It is a good programming practice, to separate the processing, the gui and the data strictly. Instead of storing a bunch of values inside the function, a MAT file is much better, most of all if the data are needed anywhere else also.

Más respuestas (0)

Categorías

Más información sobre Workspace Variables and MAT Files en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by