В моем случае добавление преамбулы к файлу решило мою проблему:
есть веб-приложение, которое экспортирует файлы CSV, содержащие иностранные символы, с UTF-8, без спецификации. И пользователи Windows, и Mac получают символы мусора в Excel. Я пытался конвертировать в UTF-8 с спецификацией; С Excel / Win все в порядке, Excel / Mac показывает бред. Я использую Excel 2003 / Win, Excel 2011 / Mac. Вот все кодировки, которые я пробовал:
Encoding BOM Win Mac
-------- --- ---------------------------- ------------
utf-8 -- scrambled scrambled
utf-8 BOM WORKS scrambled
utf-16 -- file not recognized file not recognized
utf-16 BOM file not recognized Chinese gibberish
utf-16LE -- file not recognized file not recognized
utf-16LE BOM characters OK, same as Win
row data all in first field
Лучшим является UTF-16LE с спецификацией, но CSV не распознается как таковой. Разделитель полей - запятая, но точка с запятой ничего не меняет.
Есть ли какая-либо кодировка, которая работает в обоих мирах?