I finally got around to cleaning up a parser I’ve had in my code folder and posted it on Github: http://github.com/davedelong/CHCSVParser
It’s quite thorough. It handles all sorts of escaping schemes, newlines in fields, comments, etc. It also uses intelligent file loading, which means you can safely parse huge files in constrained memory conditions.