How can I modifya string into a ".m" file from a new ".m" file?
古いコメントを表示
Hi. I'd like to know if is it possible to modify a string (or part of it) from outside, i.e. create a new ".m" file and modify, or change, strings of an existent ".m" file from the new one. Thanking you for your attention, I'm looking forward for your answers.
3 件のコメント
Star Strider
2012 年 10 月 10 日
A .m file is simply a text file, so theoretically, yes.
Matt Kindig
2012 年 10 月 10 日
Hi Antonio,
Your question is a bit unclear. Are you saying that you want to do a search/replace in the m-file, and then write out the replaced file as a new file? If so, you can either use the "Find & Replace" utility in the Matlab IDE (Ctrl+F), or you can do it in code using something like this:
str = fileread('/path/to/your/mfile.m');
newstr = strrep(str, 'oldtext1', 'replacetext1');
newstr = strrep(newstr, 'oldtext2', 'replacetext2');
% etc.
%now write new file
fid = fopen('/path/to/newfile.m', 'wt');
fprintf(fid, '%s', newstr);
fclose(fid);
Antonio
2012 年 10 月 11 日
回答 (1 件)
Image Analyst
2012 年 10 月 10 日
0 投票
Yes, use fopen, fgets or fgetl, fprintf, and fclose.
2 件のコメント
Antonio
2012 年 10 月 11 日
Image Analyst
2012 年 10 月 11 日
Try strrep() instead of STRREP(). MATLAB is case sensitive.
カテゴリ
ヘルプ センター および File Exchange で Characters and Strings についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!