This is obsolete as `-[initWithContentsOfFile:]` is just calling into `-[initWithContentsOfIRI:]` anyway. Yes, it's possible to check the size first and allocate the buffer, but that has problems if the size changes. Hence, this is probably an optimization not worth it. Memory mapped data and strings probably make more sense.