protected List<DBaseRecord> readRecordsFromFile(File file) throws IOException {
    List<DBaseRecord> records;
    InputStream is = null;

    try {
      is = new BufferedInputStream(new FileInputStream(file));
      WWIO.skipBytes(is, this.header.headerLength); // Skip over header
      records = this.readRecordsFromStream(is);
    } finally {
      if (is != null) is.close();
    }

    return records;
  }