Я пытаюсь взять файл и разбить его на куски по 512 КБ. Чтобы рассчитать количество фрагментов, мне нужно выполнить некоторые основные математические действия. По какой-то причине у меня возникают проблемы с потерей данных. Я не могу понять, что я делаю неправильно. У меня сейчас:
int chunkSize = 524288; // 512kb
int fileByteCount = GetFileSizeInBytes();
decimal result = ((decimal)(fileByteCount)) / ((decimal)(chunkSize));
int packetCount = Math.Ceiling(result); // Doesn't work.
Я не могу использовать Math.Ceiling, потому что для этого требуется двойник. Но, я думаю, мне нужно использовать десятичную дробь, чтобы сделать математику. Что я делаю не так? Как выполнить эту базовую математическую операцию?