2011-07-01 6 views
5

나는 같은 프로그램으로 실행하기 위해 천 개의 .dat 파일을 가지고있다. 하나씩 실행하는 대신 자동으로 실행하는 빠른 방법이나 스크립트가 있습니까? .dat 파일의 파일 이름은 다릅니다.Matlab에서 동일한 코드를 여러 파일 (동일한 디렉토리에 다른 파일 이름)과 함께 실행하는 방법은 무엇입니까?

fid=fopen('**abd**.dat'); 
C=textscan(...); 
... 
save('**abd**.txt',data); 

ABD 파일 이름 :

프로그램

은 같은 것입니다. 다른 파일 이름을 가진 수천 개의 파일이 있습니다. 파일 이름을 복사하여 프로그램에 붙여 넣고 실행하면 조금 성가 시게됩니다. 누구든지 빠른 방법이나 코드를 가지고 있습니까?

답변

6

"dir"을 사용하여 파일 목록을 가져온 다음 이와 같은 루프에서 처리 할 수 ​​있습니다.

fns = dir('*.dat'); 
for i = 1:length(fns) 
    fid = fopen(fns(i).name); 
    C = textscan(...); 
    fclose(fid); 
    save([fns(i).name,'.dat'],data); 

end 
1

문제를 다시 생각해보십시오. 파일 이름과 문자열의 텍스트 파일을 읽는 스크립트를 작성하십시오. 그런 다음 수천 개가 아닌 2 개의 파일이 있습니다.

관련 문제