code: public static String milliSecToString(final long mS) {
      final long rem_mS = (long)(mS % 1000.0);
      final long rem_sec = (long)((mS / 1000.0) % 60.0);
      final long rem_min = (long)((mS / 60000.0) % 60.0);
      final long hr  =     (long)(mS / 3600000.0);
      final String mSstr = zeroPad(Long.toString(rem_mS), 3);
      final String secStr = zeroPad(Long.toString(rem_sec), 2);
      final String minStr = zeroPad(Long.toString(rem_min), 2);
      return String.format("%d:%2s:%2s.%3s", hr, minStr, secStr, mSstr);
    }
docs: Returns the given time in milliseconds formatted as Hours:Min:Sec.mSec
  @param mS the given nanoseconds
  @return the given time in milliseconds formatted as Hours:Min:Sec.mSec