/**
  * Method to get a date from the bytes table
  *
  * @param pAnnotation annotation data
  * @param pBit table bytes
  * @return The date read of null
  */
 private static Date getDate(final AnnotationData pAnnotation, final BitUtils pBit) {
   Date date = null;
   if (pAnnotation.getDateStandard() == BCD_DATE) {
     SimpleDateFormat sdf = new SimpleDateFormat(pAnnotation.getFormat());
     StringBuffer buff = new StringBuffer();
     for (int i = 0; i < pAnnotation.getSize(); i += HALF_BYTE_SIZE) {
       buff.append(pBit.getNextInteger(HALF_BYTE_SIZE));
     }
     try {
       date = sdf.parse(buff.toString());
     } catch (ParseException e) {
       LOGGER.error("Start date invalid" + e.getMessage(), e);
     }
   } else {
     date = pBit.getNextDate(pAnnotation.getSize(), pAnnotation.getFormat());
   }
   return date;
 }