Your CSV would actually look like this instead:
full name,address
Homer Simpson,"742 Evergreen Terrace,
Springfield"
"Bart ""El Barto"" Simpson","742 Evergreen Terrace,
Springfield"
(Omitted optional quotes for fields that don't need them). Quotes are escaped with "", and line breaks don't need escaping, they just have to be in a quoted field. And there is no space after a comma, except you want that space to be part of the field's value.Thanks for the correction regarding escaping, but I think you went a little overboard on the other alterations:
> Omitted optional quotes for fields that don't need them
I think it's good policy to always wrap your contents in quotes regardless of whether you have a delimiter that needs quoting. And in fact many CSV marshallers will do just this.
> And there is no space after a comma
That was added purely for readability on HN. I agree it's not how you'd normally marshal the contents.
Also most CSV parsers support quotation marks and escaping to get around the comma and new line et al problems. eg:
Granted it's not the prettiest and some spreadsheets really love to break the formatting upon save (cough Microsoft Excel cough) but it does work.As a side note, the best spreadsheet I've found for manipulating CSV data without breaking the formatting upon saving was OpenOffice Calc. This was a few years back before the LibreOffice fork was created as I've thankfully not needed to deal with CSV files large enough to warrant a full blown spreadsheet editor, but I would assume LibreOffice Calc would behave the same.