http://stackoverflow.com/questions/3967541/how-to- split-large-files-efficiently
první výsledek z milionu, co google vyblil.
Pokud nezvládneš rozdělit soubor, tak snad raději ani neprogramuj - to je algoritmus pro děti ze školy, naplnit buffer a vyblajznout jej do splitu dokud nedosáhne požadované velikosti a pak pokračovat s dalším split souborem, dokud existují zdrojová data. V podstatě jde o dva vnořené cykly.