ReadFile improved