사용방법은 C언어와 비슷합니다.
우선 사용하시기 위해선 아래와 같은 헤더파일을 인크루드(포함)하셔야합니다.
#include<fstream> |
이제부터 본격적으로 파고 들어가 봅시다~
C언어에서의 입력용 파일의 열람의 경우 다음과 같습니다.
FILE *f = fopen("INPUT.TXT","r"); |
그렇다면 C++에서의 입력용 파일의 열람의 경우 어떨까요?
조금도 캡슐화되고 간편화 되었습니다.
자 , 보시죠.
ifstream fin; fin.open("INPUT.TXT"); |
if는 만약이라는 영어 단어가 아니라 INPUT FILE의 약자입니다.
그리고 이 객체에 포함되어있는 open 함수에 파일의 이름을 문자열로 전달하면 자동으로 파일이 열리게 됩니다.
자 그러면 입력함수는 어떨까요? cin함수의 사용방법과 똑같습니다.
ifstream객체이름>>~입니다.
int a,b; fin>>a>>b; |
좀더 간단하지 않나요?
c언어에선는 FILE구조체 변수,형식,변수까지 인자값으로 전달해줘야 했었는데, C++에서는 변수명만 인자로 전달해주면 됩니다!
다만 큰수나 형식을 필요로 할때는 C언어 파일입출력을 사용하셔야합니다.
단 아시고 계셔야할 점은 C파일 입출력함수와 C++파일 입출력 메서드(클래스 안에 포함된 함수)는 호환이 되지 않습니다~
자 그럼 출력용 파일의 열람의 경우 C에서는 아래와 같이 선언했었습니다.
FILE *f = fopen("OUTPUT.TXT","w"); |
C++에선 아래와 같이 선언하면됩니다.
ofstream fout; fout.open("OUTPUT.TXT"); |
of은 if처럼 output File의 약자입니다~
자 그럼 출력함수도 cout함수와 비슷하겠죠?
파일객체 명에다가 <<하시면 되시겠습니다.
fout<<a<<"-"<<b; |
fprintf함수보다 훨씬 간단합니다~
마지막으로 입출력이 모두 가능한 클래스 하나를 소개하고 이번 강의를 마치고자 합니다.
입출력이 모두 가능한 클래스 객체의 선언은 다음과 같습니다.
fstream finout; |
나머지 사용방법은 위와 같습니다.
자, 그럼 여기서 강의를 이만 마치도록 하겠습니다~
-예제 소스 하나 첨부합니다-
#include <fstream> ofstream fout; |
'2_ 바삭바삭 프로그래밍 > C and C++' 카테고리의 다른 글
WinAPI - WinAPI에서 콘솔창 띄우기 (0) | 2011.03.05 |
---|---|
C++ - 스레드를 돌리는 간단한 예제! (0) | 2011.01.26 |
C++ - 템플릿 : 함수 템플릿 정의 하기 (0) | 2011.01.24 |
C++ - Stack Queue (0) | 2010.12.28 |
C++ - 인터넷 연결확인 방법 (0) | 2010.12.21 |