to use less memory when read file