검색어 입력폼

성균관대학교 전기전자프로그래밍(전전프) 1.파일의입출력

저작시기 2013.03 |등록일 2014.09.26 한글파일한글 (hwp) | 9페이지 | 가격 1,000원

소개글

전기전자프로그래밍 민형복교수님 레포트

목차

1. Introduction

2. Problem Statement
① Describe what is the problem
② Describe how do you solve the problem.
③ Draw a flowchart of your algorithm

3. Implementation

4. Result

5. Conclusion & Evaluation

본문내용

1. Introduction
파일 입출력에 관한 함수(fopen(), fclose(), fscanf(), fgets(), fseek(), ftell(), fread(), fwrite())와 Text File, Binary File의 이해, 각 file 의 특성 등에 대해 이해하고 실습에 주어진 문제에 맞게 활용한다.

2. Problem Statement
① Describe what is the problem
int readTXTwriteBIN(char *infile, char *binary)함수와 int readBINwriteTXT(char *binary, char *outfile) 함수를 작성해야 하는 문제이다.
int readTXTwriteBIN(char *infile, char *binary)함수는 주어진 infile.txt 텍스트 파일을 읽어와 바이너리 파일로 저장하는 함수이다. 이 때, 현재 우리가 사용하고 있는 PC는 little endian 형식을 이용하므로, 이용해 big endian 형식으로 바꾸어 저장하는 법을 알아야한다. int readBINwriteTXT(char *binary, char *outfile) 함수는 저장된 바이너리 파일을 읽어와 다시 텍스트 파일로 저장하는 함수이다.

<중 략>

처음부터 현재 위치까지의 크기를 읽어주는 함수가 ftell 이라는 것을 깨닫고 fseek함수를 이용하여 포인터의 위치를 SEEK_END, 즉 파일의 끝까지 옮겨준 뒤에 사이즈를 출력시키고, 다시 SEEK_SET, 파일의 처음부분으로 포인터의 위치를 다시 옮겨 주었다. 그 다음, binary파일에 저장되어있던 데이터를 읽어들이기 위해 fread함수를 사용하였다. 이 때 배열에 원하는 데이터만 읽고 나머지 값은 0으로 만들기 위해 fread함수를 사용하기전에 모든 포인터들을 0으로 초기화 해주었다. 파일을 모두 읽은 후 big endian 이였던 데이터들을 다시 little endian으로 바꿔주었다. little endian 으로 변환 된 값을 fprintf함수를 이용하여 출력시키니 outfile.txt에 infile.txt와 같은 결과가 쓰여졌다.

참고 자료

없음
다운로드 맨위로