Solved

Convert miliseconds to  minutes, and seconds

Posted on 2011-02-20
6
1,444 Views
Last Modified: 2012-05-11
I found this code to convert miliseconds to minutes, and seconds and I don't see how the calculations can work.

it seems to me the calculation would be

double time = miliseconds/1000000/60
int minutes = Integer.parseInt(time)

If I was using C rather than Java I would then do:

int seconds = (time-minutes)*100

To aquire the seconds

I don't know how to get an integer value for the seconds.  I am attaching the code I found and if anyone has an explaination as to how it would work or how I can get an integer of the remainder of my minute calculation I would appreciate it.  I don't see how the included code can work.
Cheers sarge


      public static void convertMillis(int Millis){
      String convert = String.format("You have %d hour(s), %d minute(s), and %d second(s)",
      Millis/(1000*60*60), (Millis%(1000*60*60))/(1000*60), ((Millis%(1000*60*60))%                 (1000*60))/1000);
      System.out.println(convert);
      }
0
Comment
Question by:sargent240
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 2
6 Comments
 
LVL 23

Accepted Solution

by:
wdosanjos earned 500 total points
ID: 34938400
Check if this works for you:

    public static void convertMillis(int Millis)
    {
        int hours = Millis / (1000 * 60 * 60);

        Millis -= hours * 1000 * 60 * 60;

        int minutes = Millis / (1000 * 60);

        Millis -= minutes * 1000 * 60;

        int seconds = Millis / 1000;

        String convert = String.format("You have %d hour(s), %d minute(s), and %d second(s)",
            hours,
            minutes,
            seconds);

        System.out.println(convert);
    }

Open in new window

0
 

Author Comment

by:sargent240
ID: 34938491
This is the code I put in:

                 int Millis = Integer.parseInt(rec.getString("length").trim());

        int hours = Millis / (1000 * 60 * 60);
        Millis -= hours * 1000 * 60 * 60;
        minutes = Millis / (1000 * 60);
        Millis -= minutes * 1000 * 60;
        seconds = Millis / 1000;

The milliseconds value is coming from a database and it is the length of an audio file.  For example the value is 136333000 and if I calulate it in my old way I get 2.27.  If my thinking is correct that is ABOUT 2 minutes and 27 seconds.  When I used the above code It came to 52 minutes and 13 seconds.  I must have something screwed up.  What do ya think.
Cheers
0
 

Author Comment

by:sargent240
ID: 34938539
I think I discovered something.  The values I am using must not be milliseconds.  I is the valued that is returned from getting the durations of an audio file using the java audio functions.  I thought I read it was milliseconds but I must be wrong.  I used your code but substituted 1000000 for 1000 and it works.  Does that make sense.
Cheers!
0
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 23

Expert Comment

by:wdosanjos
ID: 34938558
Yes, it seems you have microseconds.
0
 

Author Comment

by:sargent240
ID: 34938563
Thank you very much for your help!

Cheers
0
 

Author Closing Comment

by:sargent240
ID: 34938572
Good fast and congenial comunication
0

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Advice in Xamarin 21 120
Using VBscript & RegEx, how can I match lines starting with Oracle word 17 104
Java array 10 86
Error building VS2105 solution from repository 1 60
Displaying an arrayList in a listView using the default adapter is rarely the best solution. To get full control of your display data, and to be able to refresh it after editing, requires the use of a custom adapter.
In this post we will learn how to make Android Gesture Tutorial and give different functionality whenever a user Touch or Scroll android screen.

732 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question