1 |
function varcell = ReadVariables(filename) |
2 |
|
3 |
% Function: ReadVariables |
4 |
% Author: Daniel Enderton |
5 |
% |
6 |
% Input Fields: |
7 |
% |
8 |
% Field Type (Brief) Description |
9 |
% ----------------------------------------------------------------------- |
10 |
% filename string File name to parse for variables. |
11 |
% |
12 |
% Output Fields: |
13 |
% |
14 |
% Field Type (Brief) Description |
15 |
% ----------------------------------------------------------------------- |
16 |
% varcell cell array List of variables in file. |
17 |
% |
18 |
% Descripton: |
19 |
% This function takes a text file (likely Matlab .m file) and parses it, |
20 |
% returning a cell array of all variables in the file where variables are |
21 |
% defined by <variable_name> = <variable_data>. If a line has no equal |
22 |
% signs in it, it will be ignored. |
23 |
|
24 |
varcell = {}; |
25 |
ivar = 1; |
26 |
fid = fopen(filename,'r'); |
27 |
EndFile = 0; |
28 |
while ~EndFile |
29 |
line = fgetl(fid); |
30 |
if ~ischar(line) |
31 |
EndFile = 1; |
32 |
else |
33 |
line = strrep(line,' ',''); |
34 |
if length(line) ~= 0 |
35 |
if ~isequal(line(1),'%') |
36 |
variablename = line(1:find(line == '=')-1); |
37 |
if length(variablename) > 0 |
38 |
varcell{ivar} = variablename; |
39 |
ivar = ivar+1; |
40 |
end |
41 |
end |
42 |
end |
43 |
end |
44 |
end |
45 |
fclose(fid); |