반응형
MATLAB 에서 여러 개의 텍스트 파일이나 data 파일 등을 열 때 dir 명령어를 이용하여 파일 목록을 가져올 수 있습니다.
파일 목록을 가져 온 후에 for 문 등을 이용하여 일괄적으로 파일을 열어서 데이터를 가져 오는 것이 가능 합니다.
하지만 MATLAB 의 dir 명령은 recursive 하게 동작하는 옵션은 없습니다.
이러한 경우에는 MATLAB 에서 운영체제의 명령어를 이용하여 처리하는 것이 좋습니다.
윈도우 운영체제에서 도스 명령어를 이용할 경우에는 dos command 와 같은 형태로 이용합니다.
또는 [status, result] = dos('command') 와 같이 이용하여 dos 명령 실행 결과를 MATLAB 으로 가져 올 수도 있습니다.
이제 현재 폴더에서 모든 txt 파일을 recursive 하게 찾아 보죠~
[~, result] = dos('dir /s /b *.txt'); % dos 명령 실행 recursive 하게 최소 형식으로 txt 파일 찾기 실행
filenames = textscan(result,'%s','delimiter',char(10)); % 줄 바꿈(\n)을 구분자로 해서 결과를 나눔
filenames2 = filenames{1}; % cell type 으로 파일이름 저장
위 코드에서 filenames2 변수에 원하는 txt 파일들의 전체경로가 저장이 됩니다.
그럼 for 문 등을 이용해서 열기만 하면 되는 거죠~
반응형
'programming language > MATLAB' 카테고리의 다른 글
MATLAB GUI 창 크기 조절 (4) | 2012.03.03 |
---|---|
MATLAB GUI (4) | 2012.02.24 |
MATLAB figure ButtonDownFcn (0) | 2012.02.22 |
Simulink Algebraic Loop (0) | 2012.02.13 |
MATLAB convolution (151) | 2011.11.20 |
Window command 에서 MATLAB 실행 방법 (0) | 2011.11.20 |
MATLAB, end 를 이용한 데이터 추가 (1) | 2011.11.18 |
MATLAB 집합 관련 함수들 (0) | 2011.06.13 |
댓글