我怎样才能转换NSTimeInterval成NSDate?把它想象成一个秒表.我希望初始日期是00:00:00,我有一个NSTimeIntervalX秒.
我需要像这样做,因为NSTimeInterval需要通过使用lround舍入转换为int ,然后转换NSDate为使用NSDateFormatter将其转换为字符串.
给定表示一段时间的NSTimeInterval,如何创建一个人类可读的字符串,以一种尊重i18N的方式表达该时间段?
例如,如果NSTimeInterval等于10823.23435秒,那么将一些合理的方法呈现为美国人的字符串可能是:
(即你在秒表上看到的东西.)
据推测,其他区域设置可能使用不同的渲染.
我知道NSDateFormatter和NSNumberFormatter,但我不清楚是否或如何使用其中一个来解决这个问题.
我也知道FormatterKit,但这只是相对时间段(例如,"3分钟前").我正在寻找绝对的时间段.
制作我自己的特定于语言环境的解决方案是微不足道的,但是这个问题已经解决了吗?
谢谢.
我正在使用 NSDateFormatter 来格式化持续时间(请参阅此处)。
我想使用这样的格式:“3 小时 15 分钟”。
这是我正在使用的格式字符串:@"H' hours, 'm' minutes'".
问题是,对于短于一小时的持续时间,结果类似于“0 小时 35 分钟”。
在这种情况下,我只想显示“35 分钟”。
有没有办法告诉 NSDateFormatter 根本不显示小时,如果没有,或者我应该只使用 if 语句并手动构造字符串?
编辑:
我很清楚这很容易用几行额外的行手动完成,这就是我过去所做的。我只是想知道格式化程序是否有足够的智能来自行处理这个问题,因为这似乎是一个常见问题。
我正在尝试计算步速(min/mi)并将其格式化为mmmm:ss.
到目前为止,我通过取60并将其除以平均速度来计算我的步速.平均速度为76英里每小时,我的平均速度显示为0.79.我想格式化它,以便将我的0.79分钟转换为mmmm:ss(从而显示我的平均速度为0000:47).我怎样才能做到这一点?