DEV Community

Cover image for Convert Integer value to Hour:Minute:Seconds in dart
Opeyemi Noah
Opeyemi Noah

Posted on

9 2

Convert Integer value to Hour:Minute:Seconds in dart

As a developer, there are times that you 'll need to convert a integer values to time remaining, It could be during the course of using Stream or something else.

Below is a good approach to handle the situation

Not so fast,

Alt text of image

To understand the code below you need to understand some basic time conversion.

1. one(1) hour =3600 seconds

Definitely to convert let's say 2 hours to seconds we 'll have 2*3600 = 7200 seconds

2. one(1) minute = 60 seconds

Definitely to convert 2minutes to seconds we 'll have
2*60 =120 seconds

3. one(1) seconds = 1 seconds

String intToTimeLeft(int value) {
  int h, m, s;

  h = value ~/ 3600;

  m = ((value - h * 3600)) ~/ 60;

  s = value - (h * 3600) - (m * 60);

  String result = "$h:$m:$s";

  return result;
}
Enter fullscreen mode Exit fullscreen mode

Output


0:0:0
Enter fullscreen mode Exit fullscreen mode

And if you decide to go with one with more muscle

String intToTimeLeft(int value) {
  int h, m, s;

  h = value ~/ 3600;

  m = ((value - h * 3600)) ~/ 60;

  s = value - (h * 3600) - (m * 60);

  String hourLeft = h.toString().length < 2 ? "0" + h.toString() : h.toString();

  String minuteLeft =
      m.toString().length < 2 ? "0" + m.toString() : m.toString();

  String secondsLeft =
      s.toString().length < 2 ? "0" + s.toString() : s.toString();

  String result = "$hourLeft:$minuteLeft:$secondsLeft";

  return result;
}
Enter fullscreen mode Exit fullscreen mode

Output


00:00:00
Enter fullscreen mode Exit fullscreen mode

That wraps up everything ..See you in the next one

Heroku

This site is built on Heroku

Join the ranks of developers at Salesforce, Airbase, DEV, and more who deploy their mission critical applications on Heroku. Sign up today and launch your first app!

Get Started

Top comments (3)

Collapse
 
muthmedeiros profile image
Murilo Medeiros do Valle

You could change yout "complete with zero on left" functions with the following:

final hourLeft = h.toString().padLeft(2, '0');
final minuteLeft = m.toString().padLeft(2, '0');
final secondLeft = s.toString().padLeft(2, '0');

Collapse
 
devlonoah profile image
Opeyemi Noah

thanks @muthmedeiros, will definitely check it out.

Collapse
 
pablonax profile image
Pablo Discobar

Good job! If you are interested in this topic, you can also look at my article about free vs paid Flutter templates. I'm sure you'll find something useful there, too.  - dev.to/pablonax/free-vs-paid-flutt...

Sentry image

See why 4M developers consider Sentry, “not bad.”

Fixing code doesn’t have to be the worst part of your day. Learn how Sentry can help.

Learn more

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay