如何获取日期格式,如yyyy-mm-dd am in java

时间:2015-05-20 04:31:17

标签: java android date datetime

我需要获得如下日期格式:

"yyyy-mm-dd am"

"yyyy-mm-dd pm"

在Java for Android中

我不需要当前时间,只有 yyyy-mm-dd 加上上午 / 下午

如何直接制作?

我使用以下方法获取当前日期:

    private static String getDate(){
        Calendar c = Calendar.getInstance();
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-mm-dd");
        return sdf.format(c.getTime());
    }

3 个答案:

答案 0 :(得分:7)

您只需使用

即可
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-mm-dd a");

输出

2015-34-20 AM

编辑

   SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd a");

这将产生

的输出

2015-05-20 AM

答案 1 :(得分:1)

您可以在Android中查看SimpleDateFormat的参考,以获取所有符号及其代表的列表。 SimpleDateFormat Reference

答案 2 :(得分:1)

您应该使用以下代码行... SimpleDateFormat 只有一个问题,就是您将设备语言更改为 SimpleDateFormat 之外的其他语言该字符串也会随着在您的应用程序中创建问题的语言而改变。因此,如果您想要更改日期,我建议您字符串根据应用程序语言的变化而不是使用以下概念对您有所帮助或者只需使用 SimpleDateFormat 即可将应用程序语言更改为另一个语言。

     Calendar ci = Calendar.getInstance();
     String AM_PM;

      if(ci.get(Calendar.AM_PM)==0)
        {
             AM_PM ="AM";
        }
        else
        {
             AM_PM ="PM";
        }
        String CiDateTime = "" + ci.get(Calendar.YEAR) + "-" + 
            (ci.get(Calendar.MONTH) + 1) + "-" +
            ci.get(Calendar.DAY_OF_MONTH)+" "+AM_PM;

         System.out.println("time=========================================="+CiDateTime);

<强>输出: -

 time==========================================2015-5-20 PM