파일 및 스트림

프로그램은 파일을 읽고 써서 대상 환경과 통신합니다. 파일은 다음일 수 있습니다.

  • 반복적으로 읽고 쓸 수 있는 데이터 집합

  • 프로그램에 의해 생성되는 바이트 스트림(예: 파이프라인)

  • 주변 디바이스와 주고받은 바이트 스트림

마지막 두 항목은 대화형 파일입니다. 파일은 일반적으로 프로그램과 상호 작용하기 위한 주요 수단입니다. 라이브러리 함수를 호출하여 이러한 모든 종류의 파일을 거의 동일한 방식으로 조작합니다. 이러한 함수 대부분을 선언할 때는 표준 헤더 STDIO.H를 포함합니다.

파일에 대해 작업을 수행하려면 많은 경우 먼저 파일을 열어야 합니다. 파일을 열면 해당 파일이 스트림과 연결됩니다. 스트림은 다양한 종류의 파일 간에 존재하는 많은 차이점에 주석을 다는 표준 C 라이브러리 내 데이터 구조입니다. 라이브러리는 FILE 형식의 개체에 각 스트림의 상태를 유지합니다.

대상 환경은 프로그램을 시작하기 전에 세 가지 파일을 엽니다. 두 인수를 사용하여 라이브러리 함수 fopen_wfopen 를 호출하여 파일을 열 수 있습니다. 함수는 fopen 더 이상 사용되지 않고 대신 사용합니다fopen_s_wfopen_s. 첫 번째 인수는 파일 이름입니다. 두 번째 인수는 다음을 지정하는 C 문자열입니다.

  • 파일에서 데이터를 읽을 계획인지, 파일에 데이터를 쓸 계획인지, 아니면 두 작업을 모두 수행할 계획인지 여부

  • 파일에 대한 새 콘텐츠를 생성하거나(또는 이전에 존재하지 않는 경우 파일을 만들거나) 기존 콘텐츠를 그대로 둘지 여부입니다.

  • 파일에 쓸 때 기존 콘텐츠가 변경될 수 있는지, 아니면 파일의 끝에 바이트를 추가만 할지 여부

  • 텍스트 스트림을 조작할지, 아니면 이진 스트림을 조작할지 여부

파일이 열리면 스트림이 바이트 지향(바이트 스트림)인지, 아니면 와이드 지향(와이드 스트림)인지 확인할 수 있습니다. 스트림은 처음에 바인딩되어 있지 않습니다. 스트림에 대해 특정 함수를 호출하면 바이트 지향 스트림이 되고 다른 특정 함수를 호출하면 와이드 지향 스트림이 됩니다. 일단 설정되면 스트림은 호출 fclosefreopen의해 닫을 때까지 방향을 기본.

© 1989-2001: P.J. 플라우거와 짐 브로디. All rights reserved.

참고 항목

텍스트 및 이진 스트림
바이트 및 와이드 스트림
스트림 제어
스트림 상태