#include <stdio.h>
int main() {
FILE *fp;
char str[] = "Hello, world!";
fp = fopen("output.txt", "w");
if (fp == NULL)
printf("파일 열기 실패\n");
for (int i = 0; str[i] != '\0'; i++)
fputc(str[i], fp);
fclose(fp);
return 0;
}
offset값 이용하여 이전의 바이트를 접근하지 않고 직접 접근
임의 접근을 위한 함수
1. fseek(filepointer, offset,WhereForm) : 인덱스 변경
2. ftell(filepointer) : 현재 위치의 인덱스를 알기 위해 사용
#include <stdio.h>
int main() {
FILE *in_file, *out_file;
char ch;
in_file = fopen("input.txt", "r");
out_file = fopen("output.txt", "w");
if (in_file == NULL || out_file == NULL)
printf("파일 열기 실패\n");
//처음 5byte 읽어서 쓰기
for (int i = 0; i < 5; i++) {
ch = fgetc(in_file);
if (feof(in_file)) break;
fputc(ch, out_file);
}
//파일 포인터 이동
fseek(in_file, 2, SEEK_CUR);
갱신 트랜잭션을 트랜잭션 화일에 모아서 일괄 처리
갱신 프로그램은 오류 보고서 생성
→ 수행하지 못한 모든 트랜잭션의 내용, 이유 출력
마스터 화일의 갱신 빈도