以特定格式显示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这样的事情,不要放在样板代码