The file is already got when listing files. Get file size in openReader() again is unnecessary and inefficient.