반응형
C++ 파일 입출력
C++에서는 파일 입출력 스트림을 제공한다.
입출력 스트림을 사용하기 위해서는 <fstream>라이브러리가 필요하다.
#include <fstream> #include <string> using namespace std; int main() { //파일 입력 ifstream inf("test.txt"); // 입력 파일 열기 string inStr; inf >> inStr; //입력 inf.close(); //닫기 //파일 출력 ofstream outf("outFile.txt"); // 출력 파일 열기 outf << inStr; //출력 outf.close(); //닫기 return 0; }
사용후에는 메모리 누수를 막기위해 꼭 close()를 해주는 것이 좋다.
파일 스트림은 입출력 스트림과 같이 뛰어쓰기를 기준으로 읽으므로 위 소스는 단어 하나만을 읽는다.
여러단어, 여러줄인 소스를 읽기 위해서는 eof을 이용한다.
eof()은 파일의 끝을 만나면 true를, 아니면 false를 리턴한다.
보통 while문 안에 !(not)을 붙여 사용한다.
#include <fstream> #include <string> using namespace std; int main() { ifstream inf("test.txt"); string inStr; while(! inf.eof() ) { inf >> inStr; //inStr을 배열,vector,list등에 저장 } inf.close(); return 0; }
반응형
'Language, IDE > C, C++' 카테고리의 다른 글
[C++] 템플릿(template) (0) | 2013.07.06 |
---|---|
[C++] 상속 (inheritance) (0) | 2013.07.04 |
[C++] getline 함수 (0) | 2013.07.03 |
[C++] string to char array(c스트링), char array to string (0) | 2013.07.03 |
[C++ STL] C++ String(스트링) (0) | 2013.07.03 |