在C上保存文件

时间:2011-05-05 19:13:43

标签: c

我想在计算机上保存文件。我可以使用fwrite命令。

但是我必须使用fwrite命令保存文件,例如file01,file02,..在for循环中。

所以我必须保存;例如十个文件(file01,fle02,file03 ....,file10 ......)

你能告诉我一个简单的示例代码吗?

2 个答案:

答案 0 :(得分:3)

在循环内你需要

  1. 建立flaname
  2. 打开文件
  3. 写数据
  4. 关闭文件
  5. C99示例(snprintf()是“new”),省略了许多细节

    for (j = 0; j < 10; j++) {
        snprintf(buf, sizeof buf, "file%02d.txt", j + 1);     /* 1. */
        handle = fopen(buf, "w");                             /* 2. */
        if (!handle) /* error */ exit(EXIT_FAILURE);          /* 2. */
        w = fwrite(data, 1, bytes, handle);                   /* 3. */
        if (w != bytes) /* check reason */;                   /* 3. */
        fclose(handle);                                       /* 4. */
    }
    

答案 1 :(得分:2)

您需要使用fopen逐个打开文件,如下所示:

char filename[128]; // (128-1) characters is the max filename length
FILE *file;

int i;
for (i = 0; i < 10; ++i) {
    snprintf(filename, 128, "file%02d", i);
    file = fopen(filename);

    // do stuff with file

    fclose(file);
}