×

Ghi một ký tự vào một tập tin đã mở với hàm fputc() trong C

Trong ngôn ngữ lập trình C, việc ghi một ký tự vào một tập tin đã mở là một quá trình tương đối đơn giản và thường xuyên được sử dụng trong nhiều ứng dụng khác nhau, từ việc lưu trữ dữ liệu đến việc ghi nhật ký. Để thực hiện điều này, hàm fputc() là một công cụ rất hữu ích. Bài viết này sẽ hướng dẫn chi tiết cách sử dụng hàm fputc() để ghi một ký tự vào một tập tin.

Các bước cơ bản:

  1. Mở tập tin: Trước khi có thể ghi dữ liệu vào một tập tin, cần phải mở nó. Điều này được thực hiện bằng cách sử dụng hàm fopen().

  2. Sử dụng hàm fputc(): Sau khi tập tin đã được mở, sử dụng hàm fputc() để ghi ký tự vào tập tin.

  3. Đóng tập tin: Cuối cùng, sau khi đã hoàn thành việc ghi dữ liệu, bạn cần đóng tập tin bằng hàm fclose().

Cú pháp của hàm fputc():

int fputc(int char, FILE *stream);

Trong đó:

  • char là ký tự cần ghi.
  • stream là con trỏ tới tập tin đã mở.

Ví dụ chi tiết:

Dưới đây là một ví dụ cụ thể minh họa cách sử dụng hàm fputc() để ghi một ký tự vào tập tin.

#include <stdio.h>

int main() {
    // Mở tập tin để ghi, nếu không tồn tại thì tạo mới
    FILE *file = fopen("output.txt", "w");
    
    // Kiểm tra xem tập tin có mở thành công không
    if (file == NULL) {
        printf("Không thể mở tập tin.\n");
        return 1;
    }

    // Ghi một ký tự vào tập tin
    char c = 'A';
    if (fputc(c, file) == EOF) {
        printf("Lỗi khi ghi ký tự vào tập tin.\n");
    } else {
        printf("Ghi ký tự thành công.\n");
    }

    // Đóng tập tin
    fclose(file);

    return 0;
}

Giải thích ví dụ:

  1. Mở tập tin: fopen("output.txt", "w") mở một tập tin có tên là output.txt trong chế độ ghi. Nếu tập tin không tồn tại, nó sẽ được tạo mới.

  2. Ghi ký tự: fputc(c, file) ghi ký tự A vào tập tin đã mở.

  3. Đóng tập tin: fclose(file) đóng tập tin sau khi hoàn thành việc ghi dữ liệu.

Lưu ý:

  • Nếu tập tin không thể mở (ví dụ: vì lý do quyền hạn hoặc đường dẫn không tồn tại), con trỏ tập tin sẽ là NULL. Do đó, cần kiểm tra sau khi mở tập tin để đảm bảo rằng nó đã được mở thành công.
  • Hàm fputc() trả về EOF nếu có lỗi xảy ra khi ghi. Bạn nên xử lý trường hợp này để biết mã nguồn của mình có hoạt động chính xác hay không.

Việc ghi ký tự vào tập tin bằng hàm fputc() chỉ là một trong nhiều cách thao tác với tập tin trong ngôn ngữ C. Tuy nhiên, nếu hiểu rõ cách sử dụng hàm này, bạn sẽ có nền tảng vững chắc để thực hiện các thao tác phức tạp hơn với tập tin.

Comments