在Android中将时间戳转换为日期?

时间:2012-02-01 06:48:53

标签: android

我正在实现一个Android应用程序,我想将时间戳转换为日期,但我无法获得成功。 我试过以下的事情。 如果我做错了,请检查一下。

我传递了这个值:

myTimestamp=1328015914;
DateFormat.getDateFormat(mContext).format(new Date(myTimestamp * 1000));

它返回11/1/1970,但错误。

请帮我解决此问题。

由于 Manthan Dalal

3 个答案:

答案 0 :(得分:4)

您可能需要指定时区。这是我使用的方法。

private String getDate(long timeStamp){
    DateFormat objFormatter = new SimpleDateFormat("dd-MM-yyyy");
    objFormatter.setTimeZone(TimeZone.getTimeZone(timezone));

    Calendar objCalendar =    
            Calendar.getInstance(TimeZone.getTimeZone(timezone));
    objCalendar.setTimeInMillis(timeStamp*1000);//edit
    String result = objFormatter.format(objCalendar.getTime());
    objCalendar.clear();
    return result;         
}

答案 1 :(得分:0)

嘿,如何制作一个将时间戳转换为日期的方法。喜欢 -

public static Date convertTimestampToDate(Timestamp timestamp) {
    return new Date(timestamp.getTime());
}

让我知道它是否有效。

答案 2 :(得分:0)

Calendar calendar = Calendar.getInstance();
TimeZone tz = TimeZone.getDefault();
calendar.add(Calendar.MILLISECOND,     
tz.getOffset(calendar.getTimeInMillis()));
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
java.util.Date currenTimeZone=new java.util.Date((long)1379487711*1000);
Toast.makeText(TimeStampChkActivity.this, sdf.format(currenTimeZone), Toast.LENGTH_SHORT).show();
相关问题