Text file help.
조회 수: 1 (최근 30일)
이전 댓글 표시
How can I delete the end of the table to the end of the text file. Also how can I pull out the last number, in this case 91?
@89 A 0.009 0.988 0.004 0.004
@90 B 0.002 0.002 0.991 0.003
@91 C 0.002 0.003 0.004 0.989
Next line of text
erwerwerwererwerwer
ewrwerwerwerwe
werwerewrwe
werwerwerwe
werwerwer
댓글 수: 0
채택된 답변
Jan
2011년 3월 28일
FID = fopen(FileName, 'r');
if FID == -1; error('Cannot read file'); end
Data = textscan(FID, '%s', 'delimiter', '\n', 'whitespace', '');
fclose(FID);
CStr = Data{1};
startWith_at = strncmp(CStr, '@', 1);
last_at = find(startWith_at, 1, 'last');
last_number = sscanf(CStr{last_at}, '@%d');
% Delete trailing lines:
CStr(last_at + 1:end) = [];
Do you want to write the file afterwards?
FID = fopen(FileName, 'w');
if FID == -1; error('Cannot read file'); end
fprintf(FID, '%s\n', CStr{:});
fclose(FID);
댓글 수: 0
추가 답변 (1개)
A
2011년 3월 28일
read file line by line with tab separator; check for @ character; ignore or delete all strings that do not start with @.
hope it works
댓글 수: 0
참고 항목
카테고리
Help Center 및 File Exchange에서 Text Files에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!