空间而不是领先0日期Java

She*_*ard 5 java formatting date

    SimpleDateFormat sdf = new SimpleDateFormat("MMM dd HH:mm:ss"); 
    System.out.println(sdf.format(new Date()));
    SimpleDateFormat sdff = new SimpleDateFormat("MMM d HH:mm:ss"); 
    System.out.println(sdff.format(new Date()));
Run Code Online (Sandbox Code Playgroud)

输出是:

    Aug 04 10:58:55
    Aug 4 10:58:55
Run Code Online (Sandbox Code Playgroud)

我希望输出为:

    Aug 04 10:58:55
    Aug  4 10:58:55
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

但如果一天有两个数字我需要它有一个空格:

    Aug 14 10:58:55
    Aug  4 10:58:55
Run Code Online (Sandbox Code Playgroud)

Ruc*_*era 2

如果您担心空格,只需在格式化程序中添加空格即可。

"MMM  d HH:mm:ss"
Run Code Online (Sandbox Code Playgroud)

例如:

Calendar calendar=Calendar.getInstance();
int day=calendar.get(Calendar.DAY_OF_MONTH);
SimpleDateFormat sdf;
if(day>9){
  sdf = new SimpleDateFormat("MMM dd HH:mm:ss");
}else{
  sdf = new SimpleDateFormat("MMM  d HH:mm:ss");
}
System.out.println(sdf.format(new Date()));
Run Code Online (Sandbox Code Playgroud)

输出:

Aug  4 15:50:25
Run Code Online (Sandbox Code Playgroud)

  • 如果一天中有两个数字就不行,所以它将是“Aug 11”,而我需要“Aug 11”。格式不显示它让我编辑我的问题。 (2认同)