1

タイプオブジェクトを移動するメソッドがあります(この場合、タイプオブジェクトはタイプStringです)。それをタイプ date にキャストしたいのですが、どうすればよいですか。次のコードを使用すると、エラーが発生します。

java.lang.ClassCastException: java.lang.String cannot be cast to java.util.Date

コード:

} else if (typeName.equals("Date")) {

    return new SwitchInputType<Date>((Date) memberValue);
4

7 に答える 7

1

文字列の場合は、解析する必要があります。適切な形式で SimpleDateFormat を使用してみてください。

于 2013-03-20T06:51:06.693 に答える
1

このような新しい日付オブジェクトを作成するDate date = new Date(long)か、Date クラスを使用してこの文字列を作成した場合は、その静的メソッドを使用してDate.valueOf(String s)ください。

于 2013-03-20T06:51:17.323 に答える
1

日付に割り当てる前に、まず文字列を日付オブジェクトに変換する必要があります。SimpleDateFormat.parse() メソッドを使用して、文字列を Date オブジェクトに解析します。

于 2013-03-20T06:51:44.023 に答える
1

このようなものが動作するはずです:

final SimpleDateFormat parsedDate = new SimpleDateFormat("yyyy-MM-dd");

final Date date;
try{ 
    date = parsedDate.parse(stringValue); 
} catch(Exception e) {
    // handle the exception.
}
于 2013-03-20T07:03:24.567 に答える
1

日付を解析する方法は?

SimpleDateFormat parserSDF=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = parserSDF.parse(memberValue);
于 2013-03-20T06:50:41.167 に答える
1

以下を使用できます。

return new SwitchInputType<Date>(new SimpleDateFormat("MMMM d, yyyy", Locale.ENGLISH).parse(memberValue));
于 2013-03-20T06:54:41.840 に答える