解析具有整数值的字符串到目前为止

时间:2013-02-11 17:52:20

标签: java parsing date

我有一个带有此值的字符串,例如:“20130211154717”我希望它像“2013-02-11 15:47:17”。我怎么能这样做?

4 个答案:

答案 0 :(得分:7)

您可以使用两个SimpleDateFormat:一个用于解析输入,另一个用于生成输出:

String input =  "20130211154717";
Date d = new SimpleDateFormat("yyyyMMddhhmmss").parse(input);
String output = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(d);
System.out.println("output = " + output);

答案 1 :(得分:1)

您可以使用正则表达式:

String formattedDate = plainDate.replaceFirst(
        "(\\d{4})(\\d{2})(\\d{2})(\\d{2})(\\d{2})(\\d{2})",
        "$1-$2-$3 $4:$5:$6");

尽管如此,我更喜欢assylias的SimpleDateFormat答案。 : - )

答案 2 :(得分:0)

您想要使用的是SimpleDateFormat。它有一个名为parse()

的方法

答案 3 :(得分:0)

您可以使用substring()方法获得所需内容:

String data = "20130211154717";
String year = data.substring(0, 4);
String month = data.substring(4, 2);
// etc.

然后将它们串在一起:

String formatted = year + "-" + month + "-" + . . .