Java 转换日期格式

Java convert date format

我得到这样的格式

25 Jul 2015 07:32:16

我想要这样

2015-07-25 07:32:16

如何使用 java 来实现?

看看 SimpleDateFormat

http://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html

可用于将字符串解析为日期

Java string to date conversion

然后用于获取该日期并将其重新解析为不同格式的字符串

http://examples.javacodegeeks.com/core-java/text/java-simpledateformat-example/

像这样

mydate = "25 Jul 2015 07:32:16"

DateFormat format = new SimpleDateFormat("d MM yyyy H:m:s")
Date date = format.parse(mydate)

DateFormat outputFormat = new SimpleDateFormat("yyyy-m-d H:m:s")

String finalOutput = outputFormat.format(date)

您可以使用两个 SimpleDateFormats - 一个将字符串解析为 Date 实例,另一个将其格式化为您想要的输出。

String input = "25 Jul 2015 07:32:16";
DateFormat parser = new SimpleDateFormat("dd MMM yyyy HH:mm:ss");
Date date = parser.parse(input);
DateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String output = formatter.format(date);

您只需要两个 date formatters,一个以源格式解析您的日期,另一个以目标格式对其进行格式化。它是这样的:

SimpleDateFormat fromFmt = new SimpleDateFormat("dd MMM yyyy HH:mm:ss");
Date date = fromFmt.parse("25 Jul 2015 07:32:16");;

SimpleDateFormat toFmt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println(toFmt.format(date));

您可以找到此代码的可执行版本shared here