Probleme d'export csv, affiche des caractères bizarres

xzod

Membre confirmé
20 Mars 2010
23
0
bonjour,

j'ai le problème suivant:

sous MAMP via phpMyAdmin, j'ai crée une table dans laquelle des données sont saisies (beaucoup de texte en français donc accentué). la base de données est en UTF8

j'ai besoin de récupérer ces données dans excel 2011, je fais un export CVS depuis phpMyAdmin.

lorsque j'ouvre le fichier CVS dans excel, tout les lettres accentuées s'affichent bizarrement.
si j'ouvre ce même fichier dans smultron par exemple, tout s'affiche correctement.
dans mon cas, c'est dans excel que ça pose problème.

comment résoudre ce problème sans monter une usine à gaz ?
il y a des dizaines de post en relation avec mon problème, avec des solutions plus ou moins acceptable ou au final il faut passer par un script.... (à quoi bon proposer des exports dans une interface si derrière il faut monter une usine à gaz pour régler un problème élémentaire ?)

merci
 
Il est probable que tes fichiers CSV soient en codés en ASCII Windows (les "é" sont remplacés par des "È", etc.), ce sont justement ceux-là que Smultron ouvre "correctement" - contrairement à TextWrangler qui affiche (par défaut) les CSV selon les standards Mac, de même que TextEdit, bien sûr.

En principe, Excel 2011 les ouvre correctement tout de même. Mais peut-être s'agit-il d'autres différences d'encodage (précisions bienvenues) et il convient alors de corriger le fichier texte directement pour le rendre récupérable. Ce qui peut se faire avec un utilitaire comme TextBatchConv. Mais Smultron permet de le faire assez simplement aussi, puisque tu peux le convertir via le menu "Texte" > "Encodage du texte" > "Occidental (Windows Latin 1)". Peut-être aussi ton outil d'extraction permet-il quelques réglages d'encodage lors de la création des CSV...
 
merci pour la reponse

en fait je ne sais pas en quoi est encodé le CSV, il est généré par MAMP c'est un produit exclusive pour MAC, ça m'étonnerait que ça encode en ASCII Windows, mais bon tout est possible après tout.

sinon l'usage de Textbatchconv ou smultron en mode conversion fixe en effet le problème, seulement ça génère un autre problème : le format CSV n'est plus vraiment du CSV

après conversion toutes les infos se retrouvent dans une et unique cellule excel, la première, alors qu'avant, chaque info (champs) est dans une colonne indépendante.

dans mon cas, chaque info doit rester dans une colonne indépendante.

enfin le phpMyAdmin ne permet pas de préciser l'encodage d'exportation en CSV, j'imagine qu'il se sert de l'encodage de la base de données, c'est à dire dans mon cas le UTF8.
 
en fait je ne sais pas en quoi est encodé le CSV, il est généré par MAMP c'est un produit exclusive pour MAC, ça m'étonnerait que ça encode en ASCII Windows, mais bon tout est possible après tout.
Dans la mesure où les fichiers CSV sont tout de même essentiellement destinés à être importés dans Excel, ce ne serait pas si étonnant que ça...


sinon l'usage de Textbatchconv ou smultron en mode conversion fixe en effet le problème, seulement ça génère un autre problème : le format CSV n'est plus vraiment du CSV : après conversion toutes les infos se retrouvent dans une et unique cellule excel, la première, alors qu'avant, chaque info (champs) est dans une colonne indépendante.
C'est une question de séparateur, ça. Quel est le séparateur initialement (virgule, point-virgule ou tabulation) ? Il doit falloir régler ça aussi au moment de la conversion.

Mais sinon, tu peux aussi le faire dans Excel : tu sélectionnes toute la colonne A:A puis, via le menu "Données" > "Convertir…" tu lances l'assistant de conversion. Tu choisis "Délimité" dans la première page, ton séparateur dans la deuxième, etc.