mattdipasquale mattdipasquale - 1 year ago 128
Objective-C Question

Convert MongoDB BSON ObjectId (oid) to generated time in Objective-C?

I've found this:


But how exactly would I use this for my iPhone app that gets the oid as a string from the server and want to extract the created_at timestamp? This is what I have so far. It's an Objective-C method, but can I put c code in my Objective-c .m file?

- timeFromBsonOid:(NSString *)oid {
time_t out;
memcpy(&out, oid, 4);
return out;


Answer Source

You can convert the oid string to NSDate like this:

NSString *asd = @"4c8f695bdaf9856dbe000008";
long result;
BOOL success = [[NSScanner scannerWithString:[asd substringToIndex:8]] scanHexLongLong:&result];
NSDate *date = [[NSDate alloc] initWithTimeIntervalSince1970:result];
Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download