Ο παρακάτω κώδικας μου δίνει την τρέχουσα ώρα. Αλλά δεν λέει τίποτα για τα χιλιοστά του δευτερολέπτου.
public static String getCurrentTimeStamp() {
SimpleDateFormat sdfDate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//dd/MM/yyyy
Date now = new Date();
String strDate = sdfDate.format(now);
return strDate;
}
Παίρνω ημερομηνία με τη μορφή 2009-09-22 16:47:08
(YYYY-MM-DD HH:MI:Sec).
Θέλω όμως να ανακτήσω την τρέχουσα ώρα στη μορφή 2009-09-22 16:47:08.128
((YYYY-MM-DD HH:MI:Sec.Ms)- όπου το 128 δηλώνει το χιλιοστό του δευτερολέπτου.
Η SimpleTextFormat
θα λειτουργήσει μια χαρά. Εδώ η χαμηλότερη μονάδα χρόνου είναι το δευτερόλεπτο, αλλά πώς μπορώ να πάρω και το χιλιοστό του δευτερολέπτου;
Το μόνο που χρειάζεται είναι να προσθέσετε το πεδίο millisecond στη συμβολοσειρά μορφοποίησης ημερομηνίας:
new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
Το API doc of SimpleDateFormat περιγράφει λεπτομερώς τη συμβολοσειρά μορφοποίησης.
δοκιμάστε αυτό:-
http://docs.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html
DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss.SSS");
Date date = new Date();
System.out.println(dateFormat.format(date));
ή
DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
Calendar cal = Calendar.getInstance();
System.out.println(dateFormat.format(cal.getTime()));