I got my wife an iPhone this week. She used my old Nokia N95-8GB when we both decided we were fortunate enough that we could afford to get her an iPhone. The (virtual) keyboard and overall capabilities of the device just overwhelm compared to the Nokia.
Still, her contacts were on the Nokia and needed to be moved to the iPhone. Since her new iPhone uses micro-SIM cards, the Nokia's full size SIM could not (easily) be removed and moved to the iPhone. Software was our hope.
Google provides synchronization with mobile devices using the Microsoft Exchange ActiveSync protocol. To achieve that, the Nokia is expected to have Nokia's Mail for Exchange application installed. The Nokia had version 3.0.0.0 of Mail for Exchange (MfE) and sadly failed to sync no matter how many times I tried. Ironically, Nokia has a Sync application that works with their Ovi Contacts website. Sadly, Ovi Contacts does not appear to have an export capability for the contacts it holds.
So how do you do it?
My N95-8GB came with a software application on the CD called Nokia Nseries PC Suite. I believe it is similar to the Nokia PC Suite distributed today. I installed the application on my PC (no Mac version, sadly) and connected my phone. I started the application, which detected my device. I then clicked the tools button, and finally 'Nokia PC Sync'. PC Sync will then ask you if you wanted to synchronize your phone's calendar and contacts with Outlook, Outlook Express (which relies on Windows' Address Book installed on any Windows XP and newer machine) or variations of Lotus Notes. I chose Outlook Express as I do not have Outlook installed. The application then proceeded to ask me which address book to export to and then once confirmed, the application synced.
Once synced, I disconnected the phone from the computer and opened Address Book. The application immediately showed the new contacts imported from the phone. Under the File menu, Address Book has the ability to Export. Select 'Other Address Book' and then select 'Text File (Comma Separated Values)'. Pick a location on your computer and Address Book will create a .csv file there.
Update (8/19/2010): Apparently Windows Address Book on Windows XP, at least, does not export mobile numbers in its export function. To achieve this feat you need to install Windows Live Mail. Windows Live Mail required me to uninstall a previous version of the Windows Live Essentials suite I had already but after doing that, it installed fine. Windows Live Mail comes with what apparently became Windows 7's address book – Windows Live Contacts. Windows Live Contacts, in turn, reads Windows Address Book's files but is able to let you export the correct fields – most importantly, mobile phone number.
To do that, open Windows Live Mail and select 'Contacts' from the application bar on the bottom left hand side. The contacts window will open. Now, press ALT+M or click the menus button. Select 'Export' and 'Comma Separated Values (.CSV)' from the sub-menu. A window will pop up asking you for a file name and location for the exported contacts file. Select one and click 'Next >'. You will now have the option to select what fields or contact attributes you would like to export. Scroll down the list and make sure that the 'Mobile Phone' field is checked. Click 'Finish' and the application will create the CSV file you need in order to import your contacts to Gmail.
Finally, go to Gmail and log into your account. Click 'Contacts' from the menu on the left. Your contact list will appear. On the contact list menu, click 'More Actions' and then 'Import…'. A popup will ask you to select a .csv file. Select the one you created with the Address Book application and click the 'Import' button. Google will read the file and voila – your contacts will be part of your Gmail account. This account can in turn run synchronized with your iPhone.