C语言文件操作实例 #

一、文件复制 #

c
#include <stdio.h>

int copy_file(const char* src, const char* dest) {
    FILE* fp_src = fopen(src, "rb");
    if (fp_src == NULL) return -1;
    
    FILE* fp_dest = fopen(dest, "wb");
    if (fp_dest == NULL) {
        fclose(fp_src);
        return -1;
    }
    
    int ch;
    while ((ch = fgetc(fp_src)) != EOF) {
        fputc(ch, fp_dest);
    }
    
    fclose(fp_src);
    fclose(fp_dest);
    return 0;
}

int main() {
    if (copy_file("source.txt", "dest.txt") == 0) {
        printf("复制成功\n");
    }
    return 0;
}

二、统计文件行数 #

c
#include <stdio.h>

int count_lines(const char* filename) {
    FILE* fp = fopen(filename, "r");
    if (fp == NULL) return -1;
    
    int lines = 0;
    int ch;
    while ((ch = fgetc(fp)) != EOF) {
        if (ch == '\n') lines++;
    }
    
    fclose(fp);
    return lines;
}

int main() {
    printf("行数: %d\n", count_lines("test.txt"));
    return 0;
}

三、读取配置文件 #

c
#include <stdio.h>
#include <string.h>

int main() {
    FILE* fp = fopen("config.txt", "r");
    if (fp == NULL) return 1;
    
    char line[100];
    while (fgets(line, sizeof(line), fp) != NULL) {
        char key[50], value[50];
        if (sscanf(line, "%[^=]=%s", key, value) == 2) {
            printf("配置: %s = %s\n", key, value);
        }
    }
    
    fclose(fp);
    return 0;
}

四、总结 #

文件操作要点:

  • 检查返回值
  • 及时关闭文件
  • 处理错误情况

下一步,让我们学习预处理器!

最后更新:2026-03-26