概要 これは、私の体験談ですがFlutterでクライアントサイドの開発をしている際、APIのレスポンスで来る日付と、アプリ内部で持っている現在日時を比較するというロジックに関する不具合報告が上がってきました。 それについて調査していたところ、ISO 8601形式のDateTimeがAPIから返却されるのに対し、何も考えずただDateTime型にパースしていました。 その結果、よからぬ挙動を起こしていたため備忘録として残したいと思います。 DateTimeの種類(抜粋) データーベースのシステムや、FirebaseなどのNoSQLサービスなどにも依存すると思いますが、DateTimeはいろいろな形式があります。 ISO 8601 ISO8601が今回の問題の日付フォーマットですが、以下のような種類があります 完全形式: 2023-08-01T00:00:00+09:00 短縮形式: 2023