본문 바로가기
로봇/MATLAB

MATLAB 입출력, 파일 읽기 내보내기 등등

by 33곰탱 2024. 9. 15.

MATLAB은 C언어와 마찬가지로 입출력이 있다

input으로 입력받고

disp 혹은 fprintf로 출력할 수 있다.

%8.2f는 숫자를 소수점 이하 2자리까지 표시하고, 전체 자릿수가 8자리를 넘지 않도록 출력하는 포맷을 의미한다!

등등 아래는 GPT가 정리해준 결과이다.

 

 

  • 입력 및 출력 함수
    • input: 사용자의 입력을 받습니다. 예: a = input(); -> 사용자가 입력한 값을 변수 a에 저장.
    • disp(variable_name) 또는 disp('text'): 변수를 출력하거나 문자열을 표시합니다.
    • fprintf(' %8.2f', a): 형식화된 출력을 할 때 사용됩니다. %8.2f는 위에서 설명한 것처럼 소수점 이하 두 자리로 실수를 출력하는 형식입니다.

 

  • 파일 입출력
    • fid = fopen('file_name','permission'): 파일을 열고 파일 식별자(fid)를 반환합니다. permission은 파일을 여는 권한을 지정하는 매개변수로, 다음과 같은 옵션이 있습니다:
      • 'r': 읽기 모드(기본값)
      • 'w': 쓰기 모드(기존 파일 덮어쓰기)
      • 'a': 추가 모드(기존 파일에 덧붙이기)
      • 't': 텍스트 파일로 열기
    • fclose(fid): 파일을 닫습니다. 파일이 성공적으로 닫히면 0을 반환하고, 실패하면 -1을 반환합니다.
    • fclose('all'): 열려 있는 모든 파일을 닫습니다.
    • status = fclose(fid) 또는 status = fclose('all'): 파일을 닫은 후 상태를 반환합니다. 실패하면 status는 -1이 됩니다.

 

 

  • 데이터 저장 및 불러오기
    • save file_name: 현재 작업공간의 모든 변수를 파일에 저장합니다.
    • save('file_name', 'var1', 'var2'): 지정한 변수들만 저장합니다.
    • load file_name: 파일로부터 모든 변수를 불러옵니다.
    • load('file_name', 'var1', 'var2'): 지정한 변수들만 파일에서 불러옵니다.

 

  • Excel 파일 읽기 및 쓰기
    • xlsread('filename', 'sheet_name', 'range'): Excel 파일에서 데이터를 읽어옵니다. 예를 들어, 'A1:B4' 범위에서 데이터를 읽어올 수 있습니다.
    • xlswrite('filename', variable_name, 'sheet_name', 'range'): 지정된 범위에 변수를 써넣습니다.

 

 

 

 

MATLAB 입출력, 파일 읽기, 엑셀 읽기 등등..


a = input()

disp(variable_name) or disp('text as string')
fprintf(text typed in as string)


fprintf(' %8.2f', a)
"%number.number character"
  ------ ----- 
  space  back number count
  
  % \n \b \t 등등...
  
B = [5.4 540];

fprintf(1,'%4.2f m is %6.1f mm이다, B , 6.8, 680)

fid = fopen('file_name','permission')
permission -> r(default) , w , t , a

fclose(fid)
fclose('all')
status = fclose(fid) % -1반환
status = fclose('all') % -1반환


%EXAMPLE
Vmph=10:10:100; Vkmh=Vmph*1.609;
TBL1=[Vmph; Vkmh]; % Conversion table for mph to km/h.
Flb=200:200:2000; FN=Flb*4.448;
TBL2=[Flb; FN];

fprintf(fid, 'Speed conservation table\n\n')
fprintf(fid, 'mi/h    km/h\n')
fprintf(fid, '%8.2f    %8.2f\n',TBL2)


%Save and load
save file_name
save ('file_name','var1','var2')
load file_name
load ('file_name','var1','var2')

%Read and write excel file
variable = xlsread('filename', ['sheet name'], ['range'])
A=xlsread('data', 'Sheet2', 'A1:B4')
xlswrite('filename', variable_name, ['sheet_name'], ['range'])
xlswrite('test', [13.2 -7.42 -26 3.9; 10 29.4 -51.3 91.6])

% 이번건 좀 어렵다..
    

'로봇 > MATLAB' 카테고리의 다른 글

MATLAB 툴박스 추가 설치 방법  (1) 2024.09.22
MATLAB 행렬곱, 해 구하기등  (0) 2024.08.31
MATLAB 행렬 관련  (0) 2024.08.30
MATLAB 기본  (0) 2024.08.20