ホームページ  >  記事  >  Java  >  Java で「指定されたオブジェクトを日付としてフォーマットできません」例外を解決するにはどうすればよいですか?

Java で「指定されたオブジェクトを日付としてフォーマットできません」例外を解決するにはどうすればよいですか?

DDD
DDDオリジナル
2024-10-31 03:35:30785ブラウズ

How to Resolve the

Java の例外「指定されたオブジェクトを日付としてフォーマットできません」: 解決

日付を表す文字列を特定の形式にフォーマットしようとしたときフォーマットを使用すると、開発者は「指定されたオブジェクトを日付としてフォーマットできません」という例外が発生する可能性があります。この問題は、指定された DateFormat インスタンスが文字列ではなく日付値の書式設定に使用されるために発生します。

この問題に対処するには、2 つの SimpleDateFormat オブジェクトを利用します。1 つは解析用 (文字列を日付に変換)、もう 1 つは書式設定用 (日付を日付に変換)弦)。以下に例を示します。

<code class="java">import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;

public class DateParser {
    public static void main(String[] args) throws Exception {
        // Define formats for input and output
        DateFormat outputFormat = new SimpleDateFormat("MM/yyyy", Locale.US);
        DateFormat inputFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSX", Locale.US);

        // Parse input string into a Date object
        String inputText = "2012-11-17T00:00:00.000-05:00";
        Date date = inputFormat.parse(inputText);

        // Format the Date object using the desired format
        String outputText = outputFormat.format(date);
        System.out.println(outputText); // Output: 11/2012
    }
}</code>

ユーザーのロケールに基づいて正しい日付と時刻が処理されるように、SimpleDateFormat インスタンスを作成するときにロケールを指定することをお勧めします。さらに、高度な日付と時刻の操作機能のために Joda Time ライブラリの使用を検討してください。

以上がJava で「指定されたオブジェクトを日付としてフォーマットできません」例外を解決するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。