mfc readfile 예제

이 문서에서는 MFC 대화 상자 기반 응용 프로그램과 함께 CreateFile 및 OpenFile win32 API 함수를 사용하는 예제를 살펴보겠습니다. Win32는 수많은 함수를 제공하는 풍부한 API이며 MFC는 논리적 기능 단위를 형성하기 위해 이러한 함수에 래핑된 프레임워크일 뿐입니다. Win32 API 라이브러리는 C 스타일(절차 적 접근 방식)에 있는 반면 MFC는 OOPS 기반 프레임워크 API인 기본 형식입니다. 좋아, 샘플로 시작하자. 1) 문자열이 포함된 파일을 엽니다. 예를 들어 « file.txt »라는 파일에는 « 괴짜를 위한 괴짜 »문자열이 포함되어 있습니다. 2) 파일 콘텐츠를 저장하는 파일 스트림 변수를 만듭니다. 3) 파일 스트림에서 while 루프를 통해 문자열 변수로 단어를 추출하고 인쇄합니다. 이 win32 파일 문서에서는 디스크 파일을 작성하고 읽기 위해 파일, 쓰기 파일 및 읽기 파일을 만드는 함수를 간단하게 사용하는 방법을 설명합니다.

이 예제에서는 소스 파일 경로에 복사할 파일 이름을 지정하고 대상 파일 경로라는 텍스트 상자에 대상 파일 이름을 지정합니다. CopyFile Win32 API는 이 작업을 쉽게 수행합니다. 그러나이 문서에서는 Win32 파일 처리 함수를 살펴보겠습니다. VC++ 대화 상자 기반 응용 프로그램을 사용하여 이 예제를 만듭니다. 팁: 이전 WriteFile 예제에서 만든 파일을 사용하여 이 예제를 테스트할 수 있습니다. 5) 우리는 소스 파일에서 데이터를 읽기 위해 ReadFile API를 사용합니다. 호출이 성공하면 버퍼 변수에서 읽기 내용을 가져옵니다. while 루프의 사용량을 기록합니다. 파일 콘텐츠가 4095바이트를 초과하면 읽기 작업이 일괄 처리로 계속됩니다. 각 일괄 처리에서 4095 이하(더 적은 경우 마지막 읽기)를 읽습니다. bytes_read 변수는 소스 파일에서 읽는 바이트 수를 알려줍니다. 예를 들어 파일에 5000바이트의 데이터가 있고 첫 번째 읽기 일괄 처리는 다음 반복에서 나머지 5바이트가 읽히는 4095바이트를 모두 읽습니다.

이렇게 하면 API 함수 WriteFile을 사용하여 대상 파일에 데이터를 쓸 때 bytes_read 변수를 사용합니다. 이 예제에서는 소스 위치에서 대상 위치로 파일 콘텐츠를 복사하는 코드를 작성합니다. 일반 파일 콘텐츠 복사 작업은 운영 체제에서 이미 지원됩니다. 이 예제에서는 WIN32 API를 사용하여 유사한 작업을 수행하는 방법을 보여 줍니다. 그러나 특정 단어를 건너뛰거나 단어에 무언가를 추가하는 등 소스 콘텐츠를 대상으로 복사합니다. 다음 예제에서는 CreateFile을 사용하여 새 파일을 만들고 작성하기 위해 파일을 열고 WriteFile을 열어 파일에 동기적으로 간단한 문자열을 작성합니다.