У меня есть значительный объем данных, генерируемых в программе на Си.Я хочу записать данные в файлы размером 1 ГБ.
Как бы я это сделал?
В данный момент я выполняю цикл while (с условием, которое будет продолжаться до5 ГБс данных).Он создает структуру и записывает ее в файл:
fwrite(storedVal, sizeof(keyEncode),1,fp);
//storedVal being the struct (which contains my data)
Я бы хотел, чтобы каждый файл назывался code1, codes2 и увеличивался до завершения цикла while.Я уверен, что он будет содержать оператор if, основанный на размере текущего файла, в который он записывает.Затем, когда он достигает 1 ГБ, он начинается с нового файла.
edit //
на самом деле это должен быть оператор типа while, который продолжает запись до размера, пока файл не достигнет 1 ГБи начинается с нового
Мой файл в данный момент открывается перед моим циклом while:
fp = fopen("keys.dat", "wb");
while(condition is true) {
//create a new struct with data and
fwrite(storedVal, sizeof(keyEncode),1,fp);
}