我有一个具有此值的字符串,例如:“20130211154717”我希望它像“2013-02-11 15:47:17”。我怎样才能做到这一点?
问问题
628 次
4 回答
8
您可以使用两种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);
于 2013-02-11T17:54:26.580 回答
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
回答。:-)
于 2013-02-11T17:54:19.337 回答
0
您要为此使用的是SimpleDateFormat。它有一个名为parse()的方法
于 2013-02-11T17:55:03.890 回答
0
您可以使用该substring()
方法来获得您想要的:
String data = "20130211154717";
String year = data.substring(0, 4);
String month = data.substring(4, 2);
// etc.
然后将它们串在一起:
String formatted = year + "-" + month + "-" + . . .
于 2013-02-11T17:55:07.503 回答