以特定格式显示Java.util.Date

我有以下情况:

SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy"); System.out.println(dateFormat.parse("31/05/2011")); 

给出一个输出

 Tue May 31 00:00:00 SGT 2011 

但我想要的输出

 31/05/2011 

我需要在这里使用parsing,因为date需要sorting为date而不是string。

有任何想法吗 ??

怎么样:

 SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy"); System.out.println(dateFormat.format(dateFormat.parse("31/05/2011"))); > 31/05/2011 

您需要通过SimpleDateFormat.format来将date格式化为string。

这里是一个从String – > Date – > String的例子。

 SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy"); Date date = dateFormat.parse("31/05/2011"); System.out.println(dateFormat.format(date)); // prints 31/05/2011 // ^^^^^^ 

使用SimpleDateFormat.format

 SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy"); Date date = new Date(); String sDate= sdf.format(date); 

这没有意义,但是:

 System.out.println(dateFormat.format(dateFormat.parse("31/05/2011"))) SimpleDateFormat.parse() = // parse Date from String SimpleDateFormat.format() = // format Date into String 

如果您只想输出一个date,只需使用以下命令:

 System.out.printf("Date: %1$te/%1$tm/%1$tY at %1$tH:%1$tM:%1$tS%n", new Date()); 

如这里所见。 或者,如果你想把值赋给一个String(例如用于SQL构build),你可以使用:

 String formattedDate = String.format("%1$te/%1$tm/%1$tY", new Date()); 

您也可以通过遵循date/时间转换的Java API来自定义您的输出。

您可以使用下面的代码在Java中使用简单的date格式

 SimpleDateFormat simpledatafo = new SimpleDateFormat("dd/MM/yyyy"); Date newDate = new Date(); String expectedDate= simpledatafo.format(newDate); 

你已经有了这个(这就是你input的内容), parse会将一个dateparsing为给定的格式并打印完整的date对象( toString )。

这将帮助你。 DateFormat df = new SimpleDateFormat(“dd / MM / yyyy”); print(df.format(new Date());

我有这样的事情,我的build议是使用java这样的事情,不要放在样板代码

BasicImplementation