Nous avons une application Web qui exporte des fichiers CSV contenant des caractères étrangers avec UTF-8, sans nomenclature. Les utilisateurs Windows et Mac obtiennent des caractères inutiles dans Excel. J'ai essayé de convertir en UTF-8 avec BOM; Excel / Win est bien avec cela, Excel / Mac montre du charabia. J'utilise Excel 2003 / Win, Excel 2011 / Mac. Voici tous les encodages que j'ai essayés:
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
Le meilleur est UTF-16LE avec BOM, mais le CSV n'est pas reconnu comme tel. Le séparateur de champ est une virgule, mais le point-virgule ne change rien.
Y a-t-il un encodage qui fonctionne dans les deux mondes?
mb_convert_encoding($str, "UTF-16LE");
dans mon code d'exportation et poster les résultats ici.