C++
바이너리(이진) 파일 입출력 C++ 예제
수알치
2016. 12. 8. 15:40
바이너리(이진) 파일 입출력 예제
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
ifstream fi; // 읽기용 파일
ofstream fo; // 쓰기용 파일
fo.open("test.dat", ostream::binary); // 쓰기용 이진 파일 열기
if (!fo) { // if(fo.fail())
cerr << "쓰기용 파일 오픈에 실패했습니다!" << endl;
exit(1);
}
for (int i = 0; i < 10; i++) // 0~9 숫자를 연속으로 저장
fo.write((char*)&i, sizeof(int));
fo.close(); // 쓰기용 파일 닫기
fi.open("test.dat", ostream::binary); // 읽기용 이진 파일 열기
if (!fi) { // if(fi.fail())
cerr << "읽기용 파일 오픈에 실패했습니다!" << endl;
exit(1);
}
// 이진 데이터를 읽어와서 숫자로 출력
int n;
for (int i = 0; i < 10; i++) {
fi.read((char *)&n, sizeof(int));
cout << n;
}
cout << endl;
fi.close(); // 읽기용 파일 닫기
return 0;
}
반응형