Java Millisecond Convert millisToLongDHMS(long duration)

Here you can find the source of millisToLongDHMS(long duration)

Description

millis To Long DHMS

License

Apache License

Declaration

public static String millisToLongDHMS(long duration) 

Method Source Code

//package com.java2s;
//License from project: Apache License 

public class Main {
    public final static long ONE_SECOND = 1000;
    public final static long ONE_MINUTE = ONE_SECOND * 60;
    public final static long ONE_HOUR = ONE_MINUTE * 60;
    public final static long ONE_DAY = ONE_HOUR * 24;

    public static String millisToLongDHMS(long duration) {
        StringBuffer res = new StringBuffer();
        long temp = 0;
        if (duration >= ONE_SECOND) {
            temp = duration / ONE_DAY;/*from w ww .j  ava2 s .co  m*/

            if (temp > 0) {
                duration -= temp * ONE_DAY;
                res.append(temp).append(" day").append(temp > 1 ? "s" : "")
                        .append(duration >= ONE_MINUTE ? ", " : "");
            }

            temp = duration / ONE_HOUR;

            if (temp > 0) {
                duration -= temp * ONE_HOUR;
                res.append(temp).append(" hour").append(temp > 1 ? "s" : "")
                        .append(duration >= ONE_MINUTE ? ", " : "");
            }

            temp = duration / ONE_MINUTE;

            if (temp > 0) {
                duration -= temp * ONE_MINUTE;
                res.append(temp).append(" minute").append(temp > 1 ? "s" : "");
            }

            if (!res.toString().equals("") && duration >= ONE_SECOND) {
                res.append(" and ");
            }

            temp = duration / ONE_SECOND;

            if (temp > 0) {
                res.append(temp).append(" second").append(temp > 1 ? "s" : "");
            }

            return res.toString();
        } else {
            return "0 second";
        }
    }
}

Related

  1. millisToDuration(long millis)
  2. millisToDurationString(long millis)
  3. millisToHMS(long millis)
  4. millisToHMSShort(long millis)
  5. millisToLongDHMS(long duration)
  6. millisToLongDHMS(long duration, String pubDate)
  7. millisToLongM(long duration)
  8. millisToNanos(final long millis)
  9. millisToNanos(int i)