【问题标题】:How can I format this date?我怎样才能格式化这个日期?
【发布时间】:2010-11-20 21:02:09
【问题描述】:

我有一个格式如下的日期:

"yyyy-MM-dd'T'HH:mm:ss'Z'"

我想把它转换成类似的东西:

“3 分钟前”

我该怎么做?

【问题讨论】:

标签: java android datetime time simpledateformat


【解决方案1】:
【解决方案2】:

丑陋,但可以解决问题.. 是的,重复! :(

public static void main(String[] args) {
    Calendar c = Calendar.getInstance();
    c.set(2010, 10, 20, 22, 37, 12);

    Date start = c.getTime();

    Date end = new Date();


    long diff = (end.getTime() - start.getTime()) / 1000;

    long days    = diff / (60 * 60 * 24);
    long hours   = diff / (60 * 60) - days * 24;
    long minutes = diff / 60 - (hours * 60 + days * 24 * 60);
    long seconds = diff % 60;

    String output = "";
    if (days >= 1) 
        output += days + " day" + ((days > 1) ? "s" : "");

    if (hours >= 1) 
        output += " " + hours + " hour" + ((hours > 1) ? "s" : "");

    if (minutes >= 1) 
        output += " " + minutes + " minute" + ((minutes > 1) ? "s" : "");

    if (seconds >= 1) 
        output += " " + seconds + " second" + ((seconds > 1) ? "s" : "");

    output = output.trim();

    System.out.println(output);
}

【讨论】:

    【解决方案3】:

    如需查询日期,请查看How to parse a date? 要以更好的格式显示它,请检查PrettyTime

    【讨论】:

      猜你喜欢
      • 2020-10-15
      • 1970-01-01
      • 2014-12-31
      • 2019-09-11
      • 1970-01-01
      • 2022-01-11
      • 1970-01-01
      • 2012-02-07
      • 1970-01-01
      相关资源
      最近更新 更多