drunken_guy Δημοσ. 15 Αυγούστου 2012 Δημοσ. 15 Αυγούστου 2012 Γειά σας παιδιά. Έχω ξεκινήσει ένα project για σχολή όπου μια εφαρμογή android συνδέεται σε μια βάση δεδομένων και ανταλλάσσει δεδομένα με αυτήν. Μέχρι εδώ οκ. Με πολλά tutorials το βρήκα. Αυτό που δεν μπορώ να βρω είναι ένα χαζό bug. Χρησιμοποιώ μια βασική οθόνη, όπου οι καινούριοι χρήστες γράφονται στο σύστημα, και ένα datePicker widget για να γράφεται η ημερομηνία γέννησης. Με τον ακόλουθο κώδικα παίρνω την ημερομηνία από το widget και προσπαθώ να την κάνω σε format το οποίο να δουλεύει στο mySQL. > //Diavazoume tin imerominia apo to Widget. DatePicker dp=(DatePicker)findViewById(R.id.SelectDate); int day,month,year; day=dp.getDayOfMonth(); month=dp.getMonth(); year=dp.getYear(); Date now=new Date(year,month,day); //Xrisimopoioume ton formatter gia na to metatrepsoume se Date pou diavazetai apo to mySQL String mySQLdateFormat="yyyy-MM-dd"; SimpleDateFormat formatter=new SimpleDateFormat(mySQLdateFormat); String mySQLformatted=formatter.format(now); Το bug μου είναι πως όταν ολοκληρωθεί η εφαρμογή και τσεκάρω τα δεδομένα που περάστηκαν στην βάση, η χρονολογία είναι πάντα +1900 χρόνια. (το 1985 μου το βγάζει 3885 ). Φαντάζομαι πως το λάθος θα βρίσκεται κάπου στον formatter αλλά δεν καταλαβαίνω ποιο είναι. Καμιά ιδέα;
Directx Δημοσ. 16 Αυγούστου 2012 Δημοσ. 16 Αυγούστου 2012 [..] Το bug μου είναι πως όταν ολοκληρωθεί η εφαρμογή και τσεκάρω τα δεδομένα που περάστηκαν στην βάση, η χρονολογία είναι πάντα +1900 χρόνια. (το 1985 μου το βγάζει 3885 ). Φαντάζομαι πως το λάθος θα βρίσκεται κάπου στον formatter αλλά δεν καταλαβαίνω ποιο είναι. Καμιά ιδέα; Το Date δέχεται το έτος με βάση το 1900 συνεπώς θα πρέπει να αφαιρέσεις το τρέχον έτος από αυτό: > String mySQLformatted = formatter.format(new Date(year - 1900, monthOfYear, dayOfMonth)); Για περισσότερες λεπτομέρειες σχετικά με την Date δες εδώ.
drunken_guy Δημοσ. 16 Αυγούστου 2012 Μέλος Δημοσ. 16 Αυγούστου 2012 Πολύ σωστό. Ήμουν σίγουρος πως ήταν κάποια βλακεία μου. Ευχαριστώ πολύ φίλε!
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα