Android: comparer les dates du calendrier
Dans mon application Im économie lors de ma dernière mise à jour de certaines données de mon serveur.
J'ai donc utilisé:
long time = Calendar.getInstance().getTimeInMillis();
Maintenant, je veux que les données sont mises à jour deux fois par an au 03.03 et 08.08.
Comment puis-je vérifier wheater l'une de ces deux dates pensionnaires ont traversé depuis la dernière mise à jour?
- maintenant vous pouvez comparer les deux de la date comme ceci :
calendar1.compareTo(calendar2)
que de retourner -1:passé la journée --- 0 : journée en cours --- 1 : jour suivant
Vous devez vous connecter pour publier un commentaire.
Les changer de temps en mseconds et comparer:
Il y a quelque chose de très important qui m'a pris un certain temps pour comprendre, et peut être très utile pour les gens là-bas, si vous êtes à la recherche d'une réponse à une des questions suivantes ceci est pour vous:
Pourquoi ma date n'affichant pas correctement?
Pourquoi même quand je régler l'heure manuellement, il ne montre pas le droit?
Pourquoi le mois et l'année de montrer un jour de moins que celui que j'ai mis?
Pour quelque raison Java sortes le mois de valeurs comme un tableau, ce que je veux dire, c'est que pour Java janvier est 0 et en DÉCEMBRE de 11. Même chose pour l'année, si vous définissez décembre à 12 mois et de l'année 2012, et puis essayer de faire un système".out.println" du mois et de l'année, il va montrer mon mois de janvier et l'année 2013!!
alors, que devez-vous faire?
MAINTENANT QUELLE EST LA BONNE MANIÈRE D'OBTENIR QUE LA DATE DE LA VOIR SUR L'ÉCRAN?
si vous essayez de "système.out.println de yourCalendar.DATE, yourCalendar.MOIS et yourCalendar.ANNÉE," QUI NE VOUS MONTRERA PAS LA BONNE DATE!!!!
Si vous souhaitez afficher les dates que vous devez faire ce qui suit:
MAINTENANT, SI VOUS ÊTES À LA MANIPULATION DES CHAÎNES DE CARACTÈRES QUI REPRÉSENTENT DES DATES, OU......
SI VOUS AVEZ BESOIN DE COMPARER DES DATES ENTRE LES PLAGES , DISONS QUE VOUS AVEZ BESOIN DE SAVOIR SI LA DATE "UNE" AURA LIEU DANS LES 10 PROCHAINS JOURS....C'....EST.....POUR....VOUS!!
Dans mon cas, je travaille avec une chaîne qui avait le format "15/07/2012", j'ai besoin de savoir si cette date aurait lieu dans les 10 prochains jours, donc j'ai eu à faire ce qui suit:
1 obtenir que la chaîne de la date et de la transformer pour en faire un calendrier ( StringTokenizer a été utilisé ici )
c'est très simple
ne nextToken et avant le retour de la journée, de l'analyser comme un entier et de le retourner.
Rappelez-vous pour mois avant de retourner soustraire 1.
Je vais poster le code pour le premier, vous créez les deux autres:
2 ENSUITE, VOUS CRÉEZ LE CALENDRIER
3 obtenir ma date actuelle (aujourd'HUI)
4 créer temporelle calendrier pour aller dans le futur 10 jours
5 de comparer tous les 3 calendriers
ici, fondamentalement, vous demandez si la date que m'a donnée pour vous de prendre place dans l'avenir ET (&&) SI la date donnée est également inférieure à la date ultérieure qui a eu 10 jours de plus, alors s'il vous plaît me montrer "l'ÉVÉNEMENT AURA LIEU SÛR DANS LES 10 PROCHAINS JOURS!!" SINON, MONTREZ-MOI:
"L'ÉVÉNEMENT SERA PAS PRENDRE PLACE DANS LES 10 PROCHAINS JOURS".
BIEN LES GARS ET LES FILLES J'ESPÈRE QUE ÇA AIDE. UN GROS CÂLIN POUR VOUS TOUS ET BONNE CHANCE AVEC VOS PROJETS!
De la PAIX.
YOAV.
Si la comparaison doit impliquer seulement l'année, le mois et le jour, alors vous pouvez utiliser cette méthode pour vérifier si c1 est avant c2. Laid, mais il fonctionne.
utilisé la méthode compareTo ..et cela renvoie la valeur entière .si les rendements -cinq jours avant d'en date actuelle else return +cinq jours après la venir date actuelle