code: final public ModbusFileRecord[] readFileRecord(int serverAddress, ModbusFileRecord[] records) throws
              ModbusProtocolException, ModbusNumberException, ModbusIOException {
          ModbusRequest request = ModbusRequestBuilder.getInstance().buildReadFileRecord(serverAddress, records);
          ReadFileRecordResponse response = (ReadFileRecordResponse) processRequest(request);
          return response.getFileRecords();
      }
docs: This function code is used to perform a file record read.
  A file is an organization of records. Each file contains 10000 records, addressed 0000 to
  9999 decimal or 0X0000 to 0X270F. For example, record 12 is addressed as 12.
  The function can read multiple groups of references.
  
  @param serverAddress a slave address
  @param records       array of ModbusFileRecord
  @return array of ModbusFileRecord has been read
  @throws ModbusProtocolException if modbus-exception is received
  @throws ModbusNumberException   if response is invalid
  @throws ModbusIOException       if remote slave is unavailable