如何将double值转换为hh:mm?

时间:2012-09-03 21:20:59

标签: objective-c cocoa-touch time double percentage

如上所述...... 我不需要秒,因为它不会不断更新。 我搜索了这个网站并谷歌几个小时,找不到任何我需要的东西。 这是我的代码:

//Sets the percentage calculation
double percent = level / 100;
//Calculates the time left while using the following
double a = 40 * percent;
double b = 400 * percent;
double c = 7 * percent;
double d = 6 * percent;

aTime.text = [NSString stringWithFormat:@"%f", a];
bTime.text = [NSString stringWithFormat:@"%f", b];
cTime.text = [NSString stringWithFormat:@"%f", c];
dTime.text = [NSString stringWithFormat:@"%f", d];

在计算了7小时的50%后,它目前提供3.5小时。我希望它说3:30。

正如您所看到的,计算是静态减去水平计算,我只需要知道如何将小数转换为hh:mm(可能是400小时的天数)。

注意:以上所有数字(40,400,7,6)均以小时为单位。

1 个答案:

答案 0 :(得分:3)

示例:

double hours = 7; 
double percent = 0.5; // 50 percent
int value = hours * percent * 60; // value in minutes
NSString *formatted = [NSString stringWithFormat:@"%02d:%02d",value/60,value%60];
NSLog(@"%@",formatted);

输出:

03:30