2012-02-07 5 views
3

私は例えば、日付を持っている:2012-02-07 14:09:46.109950と私は1328623786.568740としてタイムスタンプを必要とする、私のコードがある:タイムスタンプが

NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init]; 
[dateFormat setDateFormat:@"yyyy-MM-dd HH:mm:ss.SSSSSS"]; 
[dateFormat setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0]]; 
NSDate *date = [dateFormat dateFromString:@"2012-02-07 14:09:46.109950"]; 
NSTimeInterval interval = [date timeIntervalSince1970]; 
[dateFormat release]; 

NSLog(@"%f", interval); 

しかし、今、私は0.110000、このような結果1328623786.110000を持っている - 丸みを帯びています。結果が丸められないように助けてください。

答えて

6

機能CFAbsoluteTimeGetCurrent();

またはCFDateGetTimeIntervalSinceDate(CFDateRef theDate, CFDateRef otherDate);

またはCFDateGetAbsoluteTime(CFDateRef theDate);

UPDATE:あなたの値は自動的にここ NSDate *date = [dateFormat dateFromString:@"2012-02-07 14:09:46.109950"];

NSLog(@"%@", [dateFormat stringFromDate:date]); 

を丸め結果:

2012-02-07 14:09:46.110000 
+0

-1ユーザーには既に日付が設定されています。 – Eimantas

+0

@Eimantas CFDateGetTimeIntervalSinceDateを追加しました – SAKrisT

+0

私の投票を更新しました – Eimantas