Class IndexedFidReader

Object
IndexedFidReader
All Implemented Interfaces:
AutoCloseable, FIDReader, FileReader

public class IndexedFidReader extends Object implements FIDReader, FileReader, AutoCloseable
This object reads from a file the fid of a feature in a shapefile.
Author:
Jesse
  • Constructor Details

  • Method Details

    • getCount

      public long getCount()
      Returns the number of Fid Entries in the file.
      Returns:
      Returns the number of Fid Entries in the file.
    • getRemoves

      public int getRemoves()
      Returns the number of features that have been removed since the fid index was regenerated.
      Returns:
      Returns the number of features that have been removed since the fid index was regenerated.
    • findFid

      public long findFid(String fid) throws IOException
      Returns the offset to the location in the SHX file that the fid identifies. This search take logN time.
      Parameters:
      fid - the fid to find.
      Returns:
      Returns the record number of the record in the SHX file that the fid identifies. Will return -1 if the fid was not found.
      Throws:
      IOException
    • goTo

      public void goTo(long recno) throws IOException
      Throws:
      IOException
    • close

      public void close() throws IOException
      Description copied from interface: FIDReader
      Release any resources associated with this reader
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface FIDReader
      Throws:
      IOException
    • hasNext

      public boolean hasNext() throws IOException
      Description copied from interface: FIDReader
      Returns whether another fid exists for this reader.
      Specified by:
      hasNext in interface FIDReader
      Returns:
      true if more content exists
      Throws:
      IOException
    • next

      public String next() throws IOException
      Description copied from interface: FIDReader
      Gets the next FID from the Reader.
      Specified by:
      next in interface FIDReader
      Returns:
      Next featureID
      Throws:
      IOException
    • currentSHXIndex

      public int currentSHXIndex()
      Returns the record number of the feature in the shx or shp that is identified by the the last fid returned by next().
      Returns:
      Returns the record number of the feature in the shx or shp that is identified by the the last fid returned by next().
    • getCurrentFIDIndex

      public long getCurrentFIDIndex()
      Returns the index that is appended to the typename to construct the fid.
      Returns:
      the index that is appended to the typename to construct the fid.
    • id

      public String id()
      Description copied from interface: FileReader
      An id for the reader. This is only used for debugging.
      Specified by:
      id in interface FileReader
      Returns:
      id for the reader.