如何获取当前时间的毫秒部分?

How to get the millisecond part of current time?

我正在尝试以毫秒为单位记录事件发生的时间。下面是我的代码:

        NSDate * now = [NSDate date];
        NSDateFormatter *outputFormatter = [[NSDateFormatter alloc] init];
        [outputFormatter setDateFormat:@"HH:mm:ss.SSS"];
        NSString *timeString = [outputFormatter stringFromDate:now];

然而,结果是这样的:

45:11.3

看起来时间记录被四舍五入到0.1秒,而小数点后第二位和第三位的精度都丢失了。谁能建议问题出在哪里以及如何获取毫秒信息?

谢谢大家!

保罗

你的代码对我来说工作正常。在这里(在 Swift 中):

let f = NSDateFormatter()
f.dateFormat = "HH:mm:ss.SSS"
let timeString = f.stringFromDate(NSDate()) // "20:26:19.118"

您没有显示您 读取 结果 timeString 所用的代码,但问题可能出在您的操作方式上。奇怪的是,您的输出中也缺少 Hour 部分。