파일 스트림은 데이터 방향을 보고 고른다
먼저 데이터가 파일에서 프로그램으로 들어오는지, 프로그램에서 파일로 나가는지 묻습니다. 그 다음 기존 내용을 지울지, 덧붙일지 같은 openmode를 정합니다.
읽기file to program
선택 클래스
std::ifstream기본 모드: std::ios::in주요 책임저장된 텍스트나 레코드를 읽어 변수로 가져옵니다. 파일이 없으면 실패 상태를 먼저 확인합니다.
쓰기program to file
선택 클래스
std::ofstream기본 모드: out | trunc주요 책임프로그램 결과를 파일에 기록합니다. 기본 동작은 기존 내용을 지울 수 있으므로 의도를 확인합니다.
읽고 쓰기both directions
선택 클래스
std::fstream기본 모드: in | out주요 책임같은 파일에서 읽기와 쓰기를 모두 다룹니다. 포인터 위치와 모드 조합을 명확히 해야 합니다.
보존하며 추가기존 로그 뒤에 이어 쓰려면 app을 명시합니다.
내용을 새로 시작출력 파일을 새 결과로 교체하려면 trunc 동작을 의식합니다.
텍스트와 바이너리줄 단위 텍스트와 원시 바이트 데이터는 읽고 쓰는 방식이 다릅니다.
클래스 선택은 방향, openmode 선택은 보존 방식입니다. 두 결정을 섞지 않으면 파일 I/O 코드가 훨씬 읽기 쉬워집니다.