BUG: Fix chunked reading of strings longer than BUFFERSIZE

This fix correctly calculates the number of BUFFER_SIZE chunks to read.
This fix takes into account dtype sizes that could be larger
than the BUFFER_SIZE, like a long string.
See #4027