Do you want to convert milliseconds to Date in Java ? Actually java.util.Date is internally
specified in milliseconds from epoch. So any date is number of millisecond
passed since January 1, 1970, 00:00:00 GMT and Date provides constructor
which can be used to create Date from
milliseconds. Knowing the fact that Date is internally maintained in
milliseconds allows you to store date in form of millisecond in Server or in
your Class
because that can be effectively expressed with a long
value. In fact many experienced Java programmer store Date as long value
while writing Immutable class which requires Date, one of the reason for that
is Date being mutable and long value of Date can be very handy. By the ways
this is next in Date related article, we have already discussed How
to convert String to Date and How
to get current month, year and day of week from Date in Java. If you haven’t
read them already, you may find them useful. In this Java tutorial we will see
example of converting millisecond into Date in Java.
Java program to convert millisecond to Date in Java

import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
/**
* Java program to convert Millisecond to Date in Java. Java API provides utility
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
/**
* Java program to convert Millisecond to Date in Java. Java API provides utility
* method to
get millisecond from Date and convert Millisecond to Date in Java.
* @author http://learn-about-linux.blogspot.com
*/
public class MillisToDate {
public static void main(String args[]) {
//Converting milliseconds to Date using java.util.Date
//current time in milliseconds
long currentDateTime = System.currentTimeMillis();
//creating Date from millisecond
Date currentDate = new Date(currentDateTime);
//printing value of Date
System.out.println("current Date: " + currentDate);
DateFormat df = new SimpleDateFormat("dd:MM:yy:HH:mm:ss");
//formatted value of current Date
System.out.println("Milliseconds to Date: " + df.format(currentDate));
//Converting milliseconds to Date using Calendar
Calendar cal = Calendar.getInstance();
cal.setTimeInMillis(currentDateTime);
System.out.println("Milliseconds to Date using Calendar:"
* @author http://learn-about-linux.blogspot.com
*/
public class MillisToDate {
public static void main(String args[]) {
//Converting milliseconds to Date using java.util.Date
//current time in milliseconds
long currentDateTime = System.currentTimeMillis();
//creating Date from millisecond
Date currentDate = new Date(currentDateTime);
//printing value of Date
System.out.println("current Date: " + currentDate);
DateFormat df = new SimpleDateFormat("dd:MM:yy:HH:mm:ss");
//formatted value of current Date
System.out.println("Milliseconds to Date: " + df.format(currentDate));
//Converting milliseconds to Date using Calendar
Calendar cal = Calendar.getInstance();
cal.setTimeInMillis(currentDateTime);
System.out.println("Milliseconds to Date using Calendar:"
+ df.format(cal.getTime()));
//copying one Date's value into another Date in Java
Date now = new Date();
Date copiedDate = new Date(now.getTime());
System.out.println("original Date: " + df.format(now));
System.out.println("copied Date: " + df.format(copiedDate));
}
}
Output:
current Date: Wed Feb 29 01:58:46 VET 2012
Milliseconds to Date: 29:02:12:01:58:46
Milliseconds to Date using Calendar:29:02:12:01:58:46
original Date: 29:02:12:01:58:46
copied Date: 29:02:12:01:58:46
//copying one Date's value into another Date in Java
Date now = new Date();
Date copiedDate = new Date(now.getTime());
System.out.println("original Date: " + df.format(now));
System.out.println("copied Date: " + df.format(copiedDate));
}
}
Output:
current Date: Wed Feb 29 01:58:46 VET 2012
Milliseconds to Date: 29:02:12:01:58:46
Milliseconds to Date using Calendar:29:02:12:01:58:46
original Date: 29:02:12:01:58:46
copied Date: 29:02:12:01:58:46
Another useful usage of keeping Date in millisecond is, It’s easy to convert
between java.util.Date and java.sql.Date. As SQL doesn't provide Date in
form of java.util.Date you often need to convert SQL
Date to util Date but keep value of Date as long millisecond value allows you
to create both java.sql.Date and java.util.Date. One more
benefit of keeping date in long millisecond value is, it’s easy to copy value
of one Date into another in Java.
That's all on how to convert milliseconds to Date in Java. We have seen
two approach one is using Date class while other is using Calendar class. I personally
prefer java.util.Date way. let me know if you come
across any other way of converting milliseconds into Date in Java.
Other Date and Time tutorials from Learn About Linux Blog
No comments:
Post a Comment