C언어 파일읽기, 쓰기 복사

2018. 12. 1. 00:20개발노트

구구단 소스를 짠 이유는 파일에 넣어주기 위해서였습니다.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
 
int main(void)
{
    FILE *fp, *fout;
    char ch;
    char str[256];
    fp = fopen("source.txt""r");  //"r"읽기 "a"추가로쓰기 "w"덮어쓰기
    fout = fopen("source22.txt""a");
    if (fp == NULL) {
        printf("파일 개방 오류 \n");
        return 1;
    }
 
    while ((fgets(str, 256, fp)) != NULL//문자열에 fgets
        puts(str);
    fputs(str, fout);//str을 fout파일에 넣어주기
    fclose(fp);
    fclose(fout);
 
    return 0;
}
cs


파일을 열기전에 포인터를 생성합니다.

FILE *fp, *fout;


그리고 파일을 열어줍니다.

파일을 열어 줄 때 파일명을 입력하고 여는 방법을 정합니다."r"읽기 "a"추가로쓰기 "w"덮어쓰기


위 소스코드에서는 r로 읽었습니다. 저 파일에는 구구단 출력 결과가 담겨 있습니다.

그 출력 결과를 그대로 "source22.txt"

파일에 담아주려합니다.


if문에 담겨있는 내용은 만약 source파일이 없으면 오류를 출력하라는 내용입니다.


while 문에서 파일의 내용을 옮겨담습니다.

while문의 조건은 fp 즉 source파일이 끝날때까지 입니다.(fgets로 파일내용을 읽습니다..)

str에 읽은 파일 내용을 써줍니다.

그리고 fputs로 str에 담긴 내용을 넣습니다.


파일 닫고 끝