3

このサンプル コードを使用すると、時刻/日付はどうなりますか??

package date;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;

public class DateFormatTest
{
    public static void main(String args[]) throws ParseException
    {
        final String pattern = "dd/MM/YYYY HH:mm";
        final Locale locale = Locale.FRENCH;
        final SimpleDateFormat formatter = new SimpleDateFormat(pattern, locale);

        Date d = new Date();
        System.out.println("Today: " + d);

        String parsedDate = formatter.format(d);
        System.out.println("Today as string:" + parsedDate);

        Date d2 = formatter.parse(parsedDate);
        System.out.println("Today parsed back:" + d2);

    }
}

出力:

Today: Fri Jun 28 16:28:04 CEST 2013
Today as string:28/06/2013 16:28
Today parsed back:Mon Dec 31 16:28:00 CET 2012    >>> ????
4

2 に答える 2

10
pattern = "dd/MM/YYYY HH:mm";

する必要があります

pattern = "dd/MM/yyyy HH:mm";

JavaDocを参照してください。

ただし、投稿したこのコードは、私の Eclipse でも実行されないことに注意してください。

java.lang.IllegalArgumentException: Illegal pattern character 'Y'

ああ、YJava 7 で追加されました。しかし、それは週年です。

于 2013-06-28T14:34:32.767 に答える
1

ちょっとした説明ですが、推測に過ぎません。間違っていたら訂正してください。

週の年の説明として、2013年の週の年を解析すると(パターンが間違っているため 2013 -> YYYY )、何らかの形で日付全体が2013年の最初の週の年、つまり2012年12月31日月曜日に設定されていると思います。

于 2013-06-28T14:58:25.270 に答える