본문 바로가기
programming language/MATLAB

MATLAB 윈도우에서의 파일 쓰기 줄 바꿈

by __observer__ 2012. 6. 17.
반응형

MATLAB 을 이용하여 파일 쓰기를 할 때는 fprintf () 함수를 사용합니다.

 

그리고 파일 열기는 fopen(), 파일 닫기는 fclose()를 사용하죠.

 

줄 바꿈 문자는 아시다시피 '\n' 을 사용하고 command 창에서는 \n 을 이용했을 때 정상적으로 줄 바꿈이 되죠.

 

그런데 text 의 형태로 파일로 저장할 때, \n 을 사용하면 정상적으로 줄 바꿈이 안 되는 것처럼 보이는 경우가 있습니다.

 

이는 윈도우의 줄바꿈과 다른 운영체제의 줄 바꿈 문자가 다르기 때문인데요.

 

윈도우에서는 \r\n 을 사용해야 notepad 등과 같은 프로그램으로 텍스트 파일을 열었을 때 정상적으로 줄 바꿈 됩니다.

 

간단히 실험을 해 보죠.

 

다음은 \n 을 사용했을 경우의 예입니다.

 

fp=fopen('test_.txt','w');

x=1:5;

 

fprintf(fp,'%d\n',x); % 파일 쓰기

fclose(fp);

 

disp('command line \n')

fprintf('%d\n',x); % command window쓰기 


다음과 같이 command 창에서는 정상적으로 나오죠.

 

 

그런데 notepad 로 test.txt 파일을 열었을 때는 다음과 같이 이상한 문자가 써져 있는 것을 확인 할 수 있죠.

 

 

다음으로 \r\n 을 사용한 경우 입니다. 

fp=fopen('test_dos.txt','w');

x=1:5;

 

fprintf(fp,'%d\r\n',x); % 파일 쓰기

fclose(fp);

 

disp('command line \r\n')

fprintf('%d\r\n',x); % command window쓰기

 

command 창의 결과를 확인 해 보면~ 한 칸씩 빈 공간이 추가 된 것을 확인 할 수 있습니다.

 

 

반면에 notepad 로 test_dos.txt 파일을 열어보면 다음과 같이 정상적으로 저장된 것을 확인 할 수 있죠.

 


반응형

댓글