現在の回答

sum:=0;
try
  AssignFile(fp, filename);
  try
    Reset(fp);
  except
    Memo1.Lines.Add(filename);
    raise;
  end;
  try
    while (not Eof(fp)) do
    begin
      try
        Readln(fp, str);
      except
        raise Exception.Create('よみこめねー');
      end;
      sum:=sum+StrToFloatDef(str, 0);
    end;
    Memo1.Lines.Add(FloatToStr(sum));
  finally
    CloseFile(fp);
  end;
except
  on E: Exception do Memo1.Lines.Add(E.Message);
end;