How do a textscan to read the value in the line above the strmatch
조회 수: 2 (최근 30일)
이전 댓글 표시
How can i read the value of sw in the line above of strmatch
vtwait 3 1 14 14 14 2 1 8194 1 64
1 300
0
tpwr 7 1 17 17 17 2 1 8194 1 64
1 50
0
sw 1 1 5 5 5 2 1 8203 1 64
1 4801.92076831
0
sfrq 1 1 1000000000 0 0 2 1 11 1 64
1 499.4240618
0
sc2 1 1 3 3 3 4 1 8195 1 64
1 0
0
sbs1 1 1 1000 -1000 0.001 3 1 1 0 64
1 0
0
use this command line head0=textread(file,'%s'); sf=str2num(char(head0(strmatch('sfrq ',head0')+2))) The value for that is '1' but i want the value '499.4240618' in the line above
댓글 수: 1
Oleg Komarov
2011년 6월 28일
I would rathr skip the passage with head0 and go directly with textscan as I showed below.
채택된 답변
Walter Roberson
2011년 6월 27일
I think you mean "the line below" not "the line above"
sw=str2num(char(head0(strmatch('sfrq ',head0')+12)));
추가 답변 (1개)
Oleg Komarov
2011년 6월 27일
fid = fopen('C:\Users\Oleg\Desktop\test.txt');
out = textscan(fid,'%s%f%f%f%f%f%f%f%f%f%f\r\n%f%f\r\n%f','CollectOutput',1);
fid = fclose(fid);
out{2}
댓글 수: 0
참고 항목
카테고리
Help Center 및 File Exchange에서 Text Data Preparation에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!