java - Convert Hours and Minutes into Milliseconds and return into HH:mm:ss Format -


using timeunit wanted convert hours , minutes milliseconds below code:

int hours = 01, minutes = 0;  long milliseconds = timeunit.seconds.tomillis(timeunit.hours.toseconds(hours) + timeunit.minutes.toseconds(minutes)); 

works fine 3600000 milliseconds

and using simpledateformat return hh:mm:ss format:

simpledateformat formatter = new simpledateformat("hh:mm:ss");  date date = new date(milliseconds); string returnformat = formatter.format(date); //final result. 

and give me result of 09:59:59 not expected output.

i confused, what's wrong code above? expecting 01:00:00 output.

update:

actually using above code create simple countdown timer using handler post.delayed function.

... @override public void run() {     milliseconds -= 1000; //remove 1 seconds     handler.postdelayed(this,1000); //delay in 1 seconds     simpledateformat formatter = new simpledateformat("hh:mm:ss"); //create time formatting     date date = new date(milliseconds); //put milliseconds format     string returnformat = formatter.format(date));      log.w("countdown", returnformat); } 

this happens because of timezone different. making timezone gmt able gain expected result. use following code snippet.

simpledateformat formatter = new simpledateformat("hh:mm:ss"); date date = new date(milliseconds); formatter.settimezone(timezone.gettimezone("gmt")); string returnformat = formatter.format(date); //final result. system.out.println(returnformat); 

Comments

Popular posts from this blog

asynchronous - C# WinSCP .NET assembly: How to upload multiple files asynchronously -

aws api gateway - SerializationException in posting new Records via Dynamodb Proxy Service in API -

asp.net - Problems sending emails from forum -