텍스트 파일을 읽어서 엔터등의 키 입력을 통해 정해진 분량을 출력하는 내용인것 같습니다.
특정 키 입력이 있으면 fread를 통해서 188바이트를 읽습니다. 그렇게 읽어들인 버퍼를 바로 출력합니다.
그리고 다시 while 루프로 키 입력을 기다립니다.
만일 종료 키 입력이 있으면 파일을 닫고 종료합니다.
혹은 읽어들인 위치를 기억하고, 키 입력이 있으면 파일을 열고 읽어들이 지점에서 188만큼 읽어들이고 나서 파일을 닫고 다시 기다립니다. 그리고 다시 적절한 키 입력이 일어나면 읽어들인 위치에서 188만큼 읽어들이고 파일을 닫습니다.
두번째가 더 좋을듯 합니다...
// 선언
// while 문 시작
// 키 입력
// switch / if 문등의 분기
// 적절한 키 조작이면
// txt파일 열기
// 188 읽기
// 읽어서 저장한 버퍼를 printf등으로 출력
// 파일 닫기
// while 처음으로
썬 님이 쓰신 글 :
: #include <stdio.h>
:
: void main()
: {
:
: FILE *fp;
: unsigned int fscn;
: unsigned int fscnp;
:
: if( (fp=fopen("d:/sun.txt","rb")) == NULL){
: printf("file open error");
: return ;
: }
:
: while(!feof(fp))
: {
: fscn=fgetc(fp);
: //printf("%x",fscn);
:
: if (fscn==0x47){
:
:
: printf("%x",fscn);
:
: }
: }
: fclose(fp);
: }
:
: 짜는 도중에 모르는 것이 있어서 이렇게 글을 올립니다.
:
:
: if (fscn==0x47){
:
:
: printf("%x",fscn);
:
: 이 부분이 문제인데요..
:
: 이곳에 채워 넣고 싶은것이
:
: 만약 fscn 이 헥사코드 0x47로 시작한다면
:
: 188바이트까지 출력하고 멈추고
:
: 다시 엔터를 치면 188바이트를 출력하고 멈추고
:
: 이렇게 계속 돌아가는걸 짜고 싶은데 어찌 해아하는지 궁금합니다.
|