Getting your contacts out of Gmail and into Yahoo Mail is tough. Although Gmail can export Contacts as an Outlook CSV file (a spreadsheet where fields are separated by commas), importing this file into Yahoo Mail does not work. The problem is that Gmail has a single "Name" field, while Yahoo Mail expects there to be two fields, "First Name" and "Last Name". Splitting the Name field into two parts is not easy to do in a spreadsheet program like Excel, because there is no direct way to split on the last blank space in a field (in order to handle optional middle names). Another problem is that names in Gmail are sometimes represented as "Firstname Lastname" and at other times as "Lastname,Firstname". Handling fields that contain newlines, commas, and quotation marks is also problematic.
So, I took the bull by the horns and wrote a little command line program that cleans up the CSV file produced by Gmail so that it can be uploaded into Yahoo Mail. The source code will compile under any C compiler that supports <stdio.h>, and I include a pre-compiled Mac OS X binary. The program, named "splitname", reads from standard in and writes to standard out. To use it type something like the following:
splitname < gmail-to-outlook.csv > fixed-gmail-to-outlook.csv
Here is the program. It someone out there puts a GUI on it for either Mac or Windows, please send me a note.