我有一个基本的方法,获取当前时间并将其设置为字符串。然而,我怎么能得到它格式化当前日期&时间在UNIX自1970年以来的时间戳格式?
这里是我的代码:
- NSDate *currentTime = [NSDate date];
- NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
- [dateFormatter setDateFormat:@"hh-mm"];
- NSString *resultString = [dateFormatter stringFromDate: currentTime];
是否可以使用NSDateFormatter将’resultString’更改为时间戳?
这里是我使用:
- NSString * timestamp = [NSString stringWithFormat:@"%f",[[NSDate date] timeIntervalSince1970] * 1000];
(乘以1000为毫秒,否则,取出)
如果你一直使用它,它可能是很好的声明一个宏
- #define TimeStamp [NSString stringWithFormat:@"%f",[[NSDate date] timeIntervalSince1970] * 1000]
然后这样调用:
- NSString * timestamp = TimeStamp;
或作为方法:
- - (NSString *) timeStamp {
- return [NSString stringWithFormat:@"%f",[[NSDate date] timeIntervalSince1970] * 1000];
- }
作为TimeInterval
- - (NSTimeInterval) timeStamp {
- return [[NSDate date] timeIntervalSince1970] * 1000;
- }
注意:
1000是将时间戳转换为毫秒。如果你喜欢你的timeInterval秒,你可以删除这个。
迅速
如果你想在Swift中使用全局变量,可以使用:
- var Timestamp: String {
- return "\(NSDate().timeIntervalSince1970 * 1000)"
- }
然后,你可以调用它
- println("Timestamp: \(Timestamp)")
再次,* 1000是毫秒,如果你愿意,你可以删除它。如果你想保持为NSTimeInterval
- var Timestamp: NSTimeInterval {
- return NSDate().timeIntervalSince1970 * 1000
- }
在任何类的上下文之外声明它们,并且它们将在任何地方可访问。