qwerty
qwerty

Reputation: 41

Date() command in java take est time why?My system shows utc and i also want utc time?

Here this last_checked_datetime is my date stored in database which is in utc format,

 Timestamp ts1=rs9.getTimestamp("last_checked_datetime");
 java.sql.Date last_chk=new java.sql.Date(ts1.getTime());
 java.util.Date time=new java.util.Date(last_chk.getTime());
 java.text.SimpleDateFormat sdf=new java.text.SimpleDateFormat("HH:mm:ss");
 String old_time=sdf.format(time);

When I call this Date() it was print EST time

 String new_time=sdf.format(new Date());
 Date date1 = sdf.parse(old_time);
 Date date2 = sdf.parse(new_time);

I want difference of these two but date1 take utc time and date2 take est time which cause a barrier in my code? Please suggest

Upvotes: 0

Views: 89

Answers (3)

user3201181
user3201181

Reputation: 62

Try setting a default time zone as such-

TimeZone.setDefault(TimeZone.getTimeZone("UTC"));

Upvotes: 1

Deepu--Java
Deepu--Java

Reputation: 3840

Calendar cal = Calendar.getInstance(TimeZone.getTimeZone("EST"));
//change the timezone
cal.setTimeZone(TimeZone.getTimeZone("UTC"));

Upvotes: 0

Ben Green
Ben Green

Reputation: 4111

Take a look at org.joda.time.DateTime

This allows you to control what timezone you want the date to be in.

For example:

DateTime.now().withZone(DateTimeZone.UTC).toDate()

Upvotes: 0

Related Questions