首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >ios int分钟时间

ios int分钟时间
EN

Stack Overflow用户
提问于 2012-02-15 23:50:56
回答 3查看 1.2K关注 0票数 0

我有一个值为NSString@"1:10:39"

这次转换为分钟的最快/最方便的方法是什么?例如:70.65

我不是在这里要求一只手,只有当你感到舒服的时候才显示代码。我主要是在找推荐信。谢谢。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-02-16 00:20:38

这里有一条路。

代码语言:javascript
复制
NSString *zeroString = @"00:00:00";
NSString *timeString = @"1:10:39";
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"HH:mm:ss"];
NSDate *zeroDate = [dateFormatter dateFromString:zeroString];
NSDate *offsetDate = [dateFormatter dateFromString:timeString];
NSTimeInterval timeDifference = [offsetDate timeIntervalSinceDate:zeroDate];
CGFloat minutes = (timeDifference/60);
NSLog(@"%0.2fmins",minutes);
票数 2
EN

Stack Overflow用户

发布于 2012-02-16 00:07:05

我将使用NSStringcomponentsSeparatedByString按顺序获得一个包含字符串'1‘、'10’和'39‘的数组,然后从该数组中提取值并对它们执行integerValue转换为数字,并对它们执行必要的算法,并确保检查数组中有三件事情作为验证步骤,并避免异常。

票数 1
EN

Stack Overflow用户

发布于 2012-02-16 00:08:54

代码语言:javascript
复制
NSString *timeString = @"1:10:39";
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
formatter.dateFormat = @"hh:mm:ss";
NSDate *timeDate = [formatter dateFromString:timeString];

formatter.dateFormat = @"hh";
int hours = [[formatter stringFromDate:timeDate] intValue];
formatter.dateFormat = @"mm";
int minutes = [[formatter stringFromDate:timeDate] intValue];
formatter.dateFormat = @"ss";
int seconds = [[formatter stringFromDate:timeDate] intValue];

float timeInMinutes = hours * 60 + minutes + seconds / 60.0;
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9303472

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档