Dans Android, la date de chaque événement (tels que les anniversaires et les anniversaires) est enregistrée au format String, par ex. "2011-12-24".Convertir la date d'Android Chaînes en objets de date
C'est au moins le cas pour mon téléphone. Certains autres téléphones peuvent peut-être stocker ces dates dans d'autres formats s'ils ont un calendrier différent du calendrier grégorien.
Même pour les téléphones avec l'ensemble de calendrier grégorien, il existe des chaînes de date avec heures et minutes et sans. Je reçois une date chaîne quand j'interroger les contacts table pour un événement:
cursor.getString(cursor.getColumnIndex(ContactsContract.CommonDataKinds.Event.START_DATE))
Il en résulte (par exemple):
"2011-12-14" ou « 2011-12-24T00: 00: 00Z "
Vous pouvez voir qu'il y a beaucoup de différents formats possibles. Afin de calculer avec des dates, j'ai besoin de les convertir à partir d'objets String à Date, pas besoin de moi?
Comment est-ce que je peux faire ceci?
PS: Je sais qu'il ya une fonction d'analyse syntaxique pour les objets de date java:
DateFormat myDateFormat = new SimpleDateFormat("dd/MM/yy");
Date tempDate = myDateFormat.parse("24/12/2011");
Mais dans Android, je ne sais pas quel format je serai confronté à, dois-je?
Merci pour la réponse gentil et serviable! J'interroge la table des contacts pour un événement: cursor.getString (cursor.getColumnIndex (ContactsContract.CommonDataKinds.Event.START_DATE)) – caw
... et c'est là que je reçois une date sous forme de chaîne, par ex. "2011-12-24T00: 00: 00Z". Comment puis-je obtenir la date en tant qu'objet Date? Il n'y a pas de méthode "cursor.getDate()" ... – caw
Vous pouvez l'analyser dans ce cas. En outre, ce format de date sera le même quel que soit le jeu de langue, vous pouvez donc le supposer sans risque. –