首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GWT的“美好时光”

GWT的“美好时光”
EN

Stack Overflow用户
提问于 2012-01-21 17:58:03
回答 3查看 708关注 0票数 8

有一个基于这篇文章的Java的"Pretty time“库:

How to calculate "time ago" in Java?

GWT也有类似的东西吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-01-21 18:01:42

票数 6
EN

Stack Overflow用户

发布于 2012-01-21 21:33:44

我不会建议你在这个任务中包括一些第三方-还有更简单的方法。

只需计算秒数、分钟数、小时数、...e.t.c数即可。然后格式化结果文本-使用Plural Forms内置的GWT i18n工具来格式化文本,如“一秒”,“两秒”,e.t.c.因此,所有消息都将被本地化并存储到i18n资源中,不需要任何硬编码。

票数 4
EN

Stack Overflow用户

发布于 2017-04-12 03:20:29

我为一个Android java项目编写了这段代码。我创建了一个包含两个方法的类:

代码语言:javascript
复制
/**
 * Created by mihai on 2/27/17.
 */

import android.util.Log;

import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import org.ocpsoft.prettytime.PrettyTime;

public class Ptime {
    static public class PtimeFormatter {
        public static String getPtime(){
        PrettyTime p = new PrettyTime();
        Log.d("demo", "time now: "+new Date());
            //getPtimeFrom("Mon Feb 27 19:17:13 EST 2017");
        return p.format(new Date());
        //prints: “moments from now”

        //System.out.println(p.format(new Date(System.currentTimeMillis() + 1000 * 60 * 10)));
        //prints: “10 minutes from now”
        }

        public static String getPtimeFrom(String t){
            PrettyTime p = new PrettyTime();
            DateFormat formatter = new SimpleDateFormat("EEE MMM d HH:mm:ss z yyyy");
            try {
                Date date = (Date)formatter.parse(t);
                Log.d("demo", "time from now: "+p.format(date));
                return p.format(date);
            } catch (ParseException e) {
                e.printStackTrace();
            }
            //Log.d("demo", "time now: "+p.format(date));
            return null;
        }

        public static String getPTimeMillis(String t){
            PrettyTime p = new PrettyTime();
            String currMilis = String.valueOf(System.currentTimeMillis());

            DateFormat formatter = new SimpleDateFormat("EEE MMM d HH:mm:ss z yyyy");
            try {
                Date aTime  = formatter.parse(t);
                Log.d("demo", "time millis: "+aTime.getTime());
                return String.valueOf(Long.parseLong(currMilis) - aTime.getTime());
            } catch (ParseException e) {
                e.printStackTrace();
            }
            return null;
        }
    }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8952115

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档