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

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

"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()); } 

您应该使用以下代码行… 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 

你可以简单地使用

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

输出将是

2015-34-20 AM

编辑

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

这将产生一个输出

2015-05-20 AM

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