Non e' corretto ... chi ti dice che le dimensioni del file siano sempre perfettamente multiple di quelle del buffer scelto (4000 byte) ?
Nella maggior parte dei casi, l'ultima parte del file, sara' di lunghezza inferiore ... e ne devi tener conto quando invii quest'ultima parte ...