Androidでは、すべてのイベント(誕生日や記念日など)の日付は、文字列形式で保存されます。 "2011-12-24"。Androidの日付文字列を日付オブジェクトに変換する
これは少なくとも私の携帯電話の場合です。グレゴリオ暦とは異なるカレンダーを使用している場合、他の携帯電話ではこれらの日付を他の形式で保存している可能性があります。
グレゴリオ暦が設定されている電話機であっても、時間と分を含む日付文字列があります。私はイベントのための連絡先のテーブルを照会するとき、私は、このような日付文字列を取得します:
cursor.getString(cursor.getColumnIndex(ContactsContract.CommonDataKinds.Event.START_DATE))
これは、(例えば)での結果:
「2011-12-14」または「2011-12-24T00: 00:00Z "
さまざまな形式が考えられます。日付を計算するために、それらをStringからDateオブジェクトに変換する必要があります。
どうすればいいですか?
PS:
DateFormat myDateFormat = new SimpleDateFormat("dd/MM/yy");
Date tempDate = myDateFormat.parse("24/12/2011");
しかし、Androidの中で、私はに直面することがありますどの形式かわからない、私は:私はJavaの日付オブジェクトのための解析機能があります知っていますか?
ありがとう!私はイベントの連絡先テーブルを照会しています:cursor.getString(cursor.getColumnIndex(ContactsContract.CommonDataKinds.Event.START_DATE)) – caw
...これは私が文字列形式の日付を取得する場所です。 "2011-12-24T00:00:00Z" Dateオブジェクトとして日付を取得するにはどうすればよいですか?メソッド "cursor.getDate()"はありません... – caw
この場合、解析できます。また、この日付書式は言語設定に関係なく同じであるため、安全に想定することができます。 –