Сохранение файлов на C

#c

#c

Вопрос:

Я хочу сохранить файлы на компьютере.Я могу использовать команды fwrite.

Но я должен перечислять файлы, такие как file01, file02, .. внутри в цикле for при сохранении с использованием команд fwrite.

Итак, я должен сохранить; например, десять файлов (file01, fle02, file03 …., file10 …)

Не могли бы вы посоветовать мне простой пример кода?

Ответ №1:

Внутри цикла вам нужно

  1. создайте имя файла
  2. откройте файл
  3. запись данных
  4. закройте файл

Пример C99 ( snprintf() является «новым»), в котором опущено множество деталей

 for (j = 0; j < 10; j  ) {
    snprintf(buf, sizeof buf, "filed.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. */
}
  

Ответ №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, "filed", i);
    file = fopen(filename);

    // do stuff with file

    fclose(file);
}