程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> ios-秒數、分鐘、小時之間的轉換

ios-秒數、分鐘、小時之間的轉換

編輯:編程綜合問答
秒數、分鐘、小時之間的轉換

將秒數換成分鐘和小時,代碼如下:

   int minutes = floor(seconds/60);
   int sec = trunc(seconds - minutes * 60);
   int hours1 = floor(seconds / (60 * 60));

運行之後在60分鐘緊接著給出 01:61:01,我要的計時器格式是 01:01:01

就是分鐘數在60分之後沒實現轉換。

請幫忙解決一下,謝謝您的幫助。

最佳回答:


是使用NSTimer實現的計時器嗎? 精確計算計時器的話,可以使用系統函數來做.
思路:
程序開始時,拿到當前時間. 開啟Timer 間隔一秒執行一次處理函數,在處理函數中更新計時器的顯示結果.計時器的顯示結果通過當前時間與第一次拿到的時間比較得到相差的時間.即為當前計時器的時間
偽代碼如下:

NSDate *date1=... //程序開始時第一次拿到的時間
NSDate *date2=[NSDate date]; // 當前時間
NSCalendar  *cal=[NSCalendar currentCalendar];
unsigned int unitFlags=NSYearCalendarUnit | NSMonthCalendarUnit | NSHourCalendarUnit | NSMinuteCalendarUnit | NSSecondCalendarUnit;
NSDateComponents *d=[cal components:unitFlags fromDate:date1 toDate:date2 options:0];
NSLog(@"%02d:%02d:%02d",[d hour], [d mintue],[d second]);
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved