Info

이 질문은 마감되었습니다. 편집하거나 답변을 올리려면 질문을 다시 여십시오.

Writing content in a text file dynamically based on an input variable

조회 수: 1 (최근 30일)
Luffy
Luffy 2015년 10월 17일
마감: MATLAB Answer Bot 2021년 8월 20일
I have a text file in which you have the following statements in the middle of text file(there are other statements starting with set word).
set TC_SYS_01 0
set TC_SYS_02 0
...
set TC_SYS_38 0
Now based on an input from GUI(say 500),i have to copy all of contents of above text file only with the following lines changed to
set TC_SYS_01 0
set TC_SYS_02 0
...
set TC_SYS_500 0
----------------------------------------------- My Code:------------------------------------------------
content = fileread('run.txt');
length = regexp(content, '(?<=set TC_SYS_\d*\s+)[01]');
% the above line is just to know how many lines of set TC_..... are present;
% input is 500,
%%%%%%%%%%%%%%%%
fid = fopen('run.txt','r');
tline = fgets(fid);
if strcmp(tline,'set TC_SYS_%d',length)
index = ftell(tline);
end
for i = length:N
% fprintf(index + 1) ??
% how to write statements after this ?
end
%%%%%%%%%%%%%%%%%
fid = fopen('run1.txt','w');
fwrite(fid,??);
fclose(fid);
If possible from the original text file which has those 38 lines of "set ...",i want to copy rest of the stuff into a new txt file & iin the new txt file i write afresh N lines of "set ...."
  댓글 수: 2
Geoff Hayes
Geoff Hayes 2015년 10월 17일
Luffy - to be clear, you want to insert lines of text into the middle of your text file. Is this correct?
Luffy
Luffy 2015년 10월 18일
Yes. If input is 500 then insert 500 lines, If input is 40 then insert 40 line,

답변 (0개)

Community Treasure Hunt

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

Start Hunting!

Translated by