1

この値の文字列があります。例:「20130211154717」「2013-02-1115:47:17」のようにします。どうやってやるの?

4

4 に答える 4

8

2 つのSimpleDateFormatを使用できます。1 つは入力を解析し、もう 1 つは出力を生成します。

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 に答える