Locale的不同时间结果

时间:2013-05-16 12:35:25

标签: java android date locale hour

    SimpleDateFormat formato =new SimpleDateFormat("HH:mm:ss");
    Calendar cal = Calendar.getInstance();
    String fecha11 = String.valueOf(formato.format(cal.getTime()));

    Locale locale = new Locale("es", "ES");
    SimpleDateFormat format = new SimpleDateFormat("HH:MM:ss", locale);
    String fecha22 = String.valueOf(format.format(cal.getTime()));

结果: 14:06:12(在我的设备中同一小时) 14:16:55(使用Locale(“es”,“ES”))

是的,我在西班牙(Bcn)¬¬'有人会解释我为什么? 接下来的问题是,当我将Locale更改为其他国家/地区时会发生这种情况吗?

谢谢,

ALEX

2 个答案:

答案 0 :(得分:3)

在您的第二个示例中:SimpleDateFormat format = new SimpleDateFormat("HH:MM:ss", locale);,您使用的是MM而不是mm,因此它是月份编号而不是打印的分钟数(5月应为05)虽然)。

答案 1 :(得分:1)

mm是分钟。 MM是月份

您的第二种格式是小时::秒

在assylias评论之后编辑