Android日期时间格式错误时间显示12小时和24小时

时间:2011-12-13 07:14:40

标签: android datetime

在这里,我发现维持一个简单的日期响应以获得12小时和24小时的一些问题。两种时间在一种日期格式中是不同的。 我目前使用的代码:

  

My Date String Response =“2011-12-12T19:41:15.17Z”

代码

private static final SimpleDateFormat dateFormatToolTipResponse = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ");

private SimpleDateFormat cunsultationPostTimezone12 = new SimpleDateFormat("MM/dd/yy hh:mm a z");
private SimpleDateFormat cunsultationPostTimezone24 = new SimpleDateFormat("MM/dd/yy HH:MM z");


public String formateDateTimeConsultation(String dateTime)
    {
        StringBuffer strResult = new StringBuffer();
        strResult.append(getPostTimecunsultation(parseDate(dateTime)));
        return strResult.toString();
    }
private static Date parseDate(String date)
        {
        try {
            return dateFormatToolTipResponse.parse(date);

        } catch ( Exception e ){
            return null;
        }
    }
private  String getPostTimecunsultation(Date date)
         {

        if(date != null){           
            if(ConstantCodes.is24Hours)
                        {       

                return cunsultationPostTimezone24.format(date);
            }
            else
                        {               
                    return cunsultationPostTimezone12.format(date);
            }
        }
        return "";
    }

======================================== 这是我的输出

24 hours = 12/12/11 11:12 PST
12 hours = 12/12/11 11:42 AM PST

我找不到这个错误。 请问你能提出一些想法吗?

1 个答案:

答案 0 :(得分:4)

你以24格式设置MM的时间

private SimpleDateFormat cunsultationPostTimezone24 = new SimpleDateFormat("MM/dd/yy HH:MM z");

所以你总是得到月值Cap Caps将给你Month值,而小m用于分钟变化,然后尝试

private SimpleDateFormat cunsultationPostTimezone24 = new SimpleDateFormat("MM/dd/yy HH:mm z");