how to write 2d array from bin file in c

#include <stdio.h>
#include <stdlib.h>

#define ROWS 3
#define COLS 4

int main() {
    FILE *file;
    int array[ROWS][COLS];

    if ((file = fopen("data.bin", "rb")) == NULL) {
        printf("Error opening file.");
        return 1;
    }

    fread(array, sizeof(int), ROWS * COLS, file);
    fclose(file);

    // Access and print the read array
    for (int i = 0; i < ROWS; i++) {
        for (int j = 0; j < COLS; j++) {
            printf("%d ", array[i][j]);
        }
        printf("\n");
    }

    return 0;
}