以特定日期时间格式转换时间戳值

时间:2011-09-26 10:57:05

标签: android

我有一个问题,我有一个来自JSON解析的时间戳值,我正在转换日期时间格式中的timastamp,这一切都很好,但是在任何情况下月总是返回1。表示如果timestamp包含aug month,但它在任何月份只返回1。我不知道如何解决这个问题。请建议我解决方案。

提前致谢。

代码:

public String create_datestring(String timestring){
        try{
                final Calendar cal = Calendar.getInstance();
                cal.setTimeInMillis(Long.parseLong(timestring));
                timestring = String.valueOf(cal.get(Calendar.MONTH)+1) + "/" +String.valueOf(cal.get(Calendar.DAY_OF_MONTH)) + "/" + String.valueOf(cal.get(Calendar.YEAR));
        }catch(NumberFormatException e){
            timestring = "9/23/2011";--->timestring always returns 1 for month.
        } 

2 个答案:

答案 0 :(得分:3)

private String getDate(String timeStampStr){

    try{
        DateFormat sdf = new SimpleDateFormat("MM/dd/yyyy");
        Date netDate = (new Date(Long.parseLong(timeStampStr)));
        return sdf.format(netDate);
    }
    catch(Exception ex){
        return dateInStr;
    }
}

答案 1 :(得分:0)

尝试这个可能会给你满意的输出。

String DATE_FORMAT="hh:mm aa dd MMMM yyyy";
    @SuppressLint("SimpleDateFormat")
        private String getDate(long time) {
            return new SimpleDateFormat(DATE_FORMAT).format(time * 1000);
        }