2014-03-25 1 views
1

장갑을 추적 장치에서 출력하려면 MATLAB을 사용하고 있습니다. 기본적으로 내가 가지고 :while 루프의 타임 스탬프로 fgets를 배열 또는 텍스트 파일에 저장

read = fgets(tracker); 
tic 
k = 1; 

while ischar(read) 
    read = fgets(tracker); 
    toc 

    k = k+1; 
end 

내가 문자열 인 '읽기'가지고 가고, while 루프에서 'TOC'에서 타임 스탬프를 저장하고 셀 어레이에 저장 할 수 있도록하려면 나 후 처리를위한 텍스트 파일. 이것은 실험에서 손 추적을위한 것입니다.

의견이 있으십니까? 감사합니다

답변

1

struct 배열 (비 스칼라 struct)을 사용하는 것이 좋습니다.

를 초기화 :

tracked = struct('read','','elapsed',[]); 

그것을 기입 :

tic % then begin reading 
% first iteration 
k = 1; 
tracked(k).read = 'first'; 
tracked(k).elapsed = toc; 
% second iteration 
k = 2; 
tracked(k).read = 'second'; 
tracked(k).elapsed = toc; 

을이 시점에서 당신은 쉽게 데이터를 추출 할 수에서 1 × struct 배열해야합니다 :

>> tracked 
tracked = 
1x2 struct array with fields: 
    read 
    elapsed 
>> elapsedTimes = [tracked.elapsed] 
elapsedTimes = 
    1.0e+03 * 
    5.8084 5.8212 
>> readData = {tracked.read} 
readData = 
    'first' 'second' 

물론 처음에는 N-by-2 셀 배열을 수행 할 수도 있습니다. 여기서 각 셀 배열은 행은 반복 k이고 두 열은 경과 시간 및 읽기. 자 데이터입니다.

+0

감사합니다. 나는 쉽게 후 처리 목적으로 배열에 의존해야했다. –

+0

@ Shagster_84 좋습니다. 가장 쉬운 것은 무엇이든하십시오. 간단한 Nx2 셀은 결국 간단합니다. 그러나 구조체에서 데이터를 추출하는 것은 내가 본 것처럼 매우 간단 할 수 있습니다. – chappjc

관련 문제