code: public static long decodeDateTime(int dosDate, int dosTime) {
          final Calendar cal = Calendar.getInstance();
          
          cal.set(Calendar.MILLISECOND, 0);
          cal.set(Calendar.SECOND, (dosTime & 0x1f) * 2);
          cal.set(Calendar.MINUTE, (dosTime >> 5) & 0x3f);
          cal.set(Calendar.HOUR_OF_DAY, dosTime >> 11);
  
          cal.set(Calendar.DATE, dosDate & 0x1f);
          cal.set(Calendar.MONTH, ((dosDate >> 5) & 0x0f) - 1);
          cal.set(Calendar.YEAR, 1980 + (dosDate >> 9));
          
          return cal.getTimeInMillis();
      }
docs: Decode a 16-bit encoded DOS date/time into a java date/time.
  
  @param dosDate
  @param dosTime
  @return long