Change the content in an m-file based on check-box input from gui
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Luffy
le 13 Oct 2015
Commenté : Walter Roberson
le 14 Oct 2015
Hi,
I have a checkbox in my gui based on which i want to make some changes in another m-file & later run it.
The format of other m-file is like this:-
tclstart = {...
'# ...there is further code above.. #',...
'# .......................... #',...
'set compile 1',...
'# .......................... #',...
'# there is further code below'
}
Based on check-box value
get(h.checkbox1, 'Value');
if it is 1,i want set compile to be 1 in that m-file otherwise 0 as an m-file is similar to txt file,i'm doing this-
content = fileread('tcl.m'); % name of that other m-file
index = regexp(content,'set compile')
Here i'm getting starting index of the matched sub-string,now how can i change the value from 1 to 0/vice-versa.
0 commentaires
Réponse acceptée
Walter Roberson
le 13 Oct 2015
newvalue = char('0' + get(h.checkbox1, 'Value'));
newcontent = regexprep(content, '(?<=set compile\s+)[01]', newvalue);
4 commentaires
Walter Roberson
le 14 Oct 2015
The code snippet does not change the .m file: it returns the variable newcontent with the updated information. You can then write newcontent to whatever file.
fid = fopen('tcl.m', 'w');
fwrite(fid, newcontent);
fclose(fid);
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Software Development Tools dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!