Windows 10 reached EOS (end of support) on October 14, 2025. If you are on Windows 10, see this article.

Search Support

Avoid support scams. We will never ask you to call or text a phone number or share personal information. Please report suspicious activity using the “Report Abuse” option.

Learn More

How to parse "modifytimestamp" in Address Book Contacts?

  • 2 replies
  • 1 has this problem
  • 11 views
  • Last reply by Matt

I need to be able to extract Contacts from my Thunderbird Address Book based on the date/time they were last updated. I could easily write a program which will search a Thunderbird Exported .ldif file and select Contacts which were updated since a given date/time, but my problem is that I can't figure out how to parse Thunderbird's "modifytimestamp" field. As the example below shows, I updated a Contact (by typing raw unformatted text data into the Notes field in the Properties dialog) on 6/19/16 at 09:39:15... the nature of my update, in fact, was to type this date and time as unformatted text into the Notes field of the Contact, in order to test modifytimestamp. The resultant modifytimestamp was 1466354355. For the life of me, I can't figure out how to derive the actual date/time from that modifytimestamp. I did a few others and I can't figure out the "rule" that Thunderbird is using to construct the modifytimestamp from the actual date and time.

Another approach (which might be much easier for me) would be to find and parse modifytimestamp (or its equivalent) in an exported .csv file, but when exporting to .csv it seems that neither "modifytimestamp" nor a decoded version of it is included as a column in the .csv file. And even if it were, I would still have the same parsing challenge if it was just the actual modifytimestamp.

Your thoughts??

Thanks!! Joe Navarro

I need to be able to extract Contacts from my Thunderbird Address Book based on the date/time they were last updated. I could easily write a program which will search a Thunderbird Exported .ldif file and select Contacts which were updated since a given date/time, but my problem is that I can't figure out how to parse Thunderbird's "modifytimestamp" field. As the example below shows, I updated a Contact (by typing raw unformatted text data into the Notes field in the Properties dialog) on 6/19/16 at 09:39:15... the nature of my update, in fact, was to type this date and time as unformatted text into the Notes field of the Contact, in order to test modifytimestamp. The resultant modifytimestamp was 1466354355. For the life of me, I can't figure out how to derive the actual date/time from that modifytimestamp. I did a few others and I can't figure out the "rule" that Thunderbird is using to construct the modifytimestamp from the actual date and time. Another approach (which might be much easier for me) would be to find and parse modifytimestamp (or its equivalent) in an exported .csv file, but when exporting to .csv it seems that neither "modifytimestamp" nor a decoded version of it is included as a column in the .csv file. And even if it were, I would still have the same parsing challenge if it was just the actual modifytimestamp. Your thoughts?? Thanks!! Joe Navarro

All Replies (2)

Not a reply, but more info for the question... I couldn't tell if the .jpg image of the actual Contact was uploaded with the question, so... here is a text version of the actual Contacts entry which I asked about:


dn: cn=BBB Reservations,mail=reservations@sonomacoast.com objectclass: top objectclass: person objectclass: organizationalPerson objectclass: inetOrgPerson objectclass: mozillaAbPersonAlpha givenName: BBB sn: Reservations cn: BBB Reservations mail: reservations@sonomacoast.com modifytimestamp: 1466354355 description: Test modifytimestamp actual contact modification date-time was 06/19/2016 09:39:15

I am no programmer, but looking here https://searchcode.com/codesearch/view/21400933/

Looks to me like dates are ASCII that needs to be converted to UTF.