Problème format csv
Résolu
mike_guevara
Messages postés
11
Statut
Membre
-
sebsauvage Messages postés 33415 Statut Modérateur -
sebsauvage Messages postés 33415 Statut Modérateur -
Bonjour
Je fais une extraction à partir d'une base de donnée Progress en format csv.
Certains enregistrements contiennent des virgules pour contourner le problème j'encadre mes enregistrements par des ".
Le problème est que certains de mes enregistrements contiennent également des ". Donc, mes données sous excel sont faussées.
Comment puis-je résoudre ce pb?
Je fais une extraction à partir d'une base de donnée Progress en format csv.
Certains enregistrements contiennent des virgules pour contourner le problème j'encadre mes enregistrements par des ".
Le problème est que certains de mes enregistrements contiennent également des ". Donc, mes données sous excel sont faussées.
Comment puis-je résoudre ce pb?
A voir également:
- Problème format csv
- Format epub - Guide
- Format factory - Télécharger - Conversion & Codecs
- Hp usb disk storage format tool - Télécharger - Stockage
- Format apfs - Guide
- Format bin - Guide
12 réponses
:-) Le coup classique du CSV.
Voilà comment proprement exporter du CSV à coup sûr:
- doubler tout séparateur de chaîne trouvé dans la cellule ( ga"bu"zo ---> ga""bu""zo )
- quoter systématiquement toutes les cellules ( toto ----> "toto" )
- puis ajouter les cellules entre elles en séparant par une virgule. ( "toto","titi","tata" )
- séparer les lignes par \r\n
Et voilà !
Quel que soit le contenu de tes cellules, tout sera exporté sans problème.
Voilà comment proprement exporter du CSV à coup sûr:
- doubler tout séparateur de chaîne trouvé dans la cellule ( ga"bu"zo ---> ga""bu""zo )
- quoter systématiquement toutes les cellules ( toto ----> "toto" )
- puis ajouter les cellules entre elles en séparant par une virgule. ( "toto","titi","tata" )
- séparer les lignes par \r\n
Et voilà !
Quel que soit le contenu de tes cellules, tout sera exporté sans problème.
Merci c'est un bon début, mais...
le seul soucis c'est que je ne peux pas doubler les séparateurs de chaines (ton premier point),
car c'est une exportation que je compte automatiser.
le seul soucis c'est que je ne peux pas doubler les séparateurs de chaines (ton premier point),
car c'est une exportation que je compte automatiser.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
le seul soucis c'est que je ne peux pas doubler les séparateurs de chaines (ton premier point), car c'est une exportation que je compte automatiser.
Tu l'automatise avec quoi ?
La plupart des langages ont des fonctions de remplacement de caractères.
Ça ne devrait pas poser de problème.
Tu l'automatise avec quoi ?
La plupart des langages ont des fonctions de remplacement de caractères.
Ça ne devrait pas poser de problème.
Pour résumer la situation, mes données proviennent d'un ERP (mfgPRO), il y a plusieurs enregistrements qui me posent soucis et ils contiennent tous un ". par exemple: ecran LCD 20".
Dans mon extraction, il y a à peu 30000 enregistrements, il es bien évident que je peux pas me permettre de doubler les séparateurs de chaines à chaque fois que je rencontre un " dans mes enregistrements. (ecran LCD 20""")
J'ai lu ton article, il est très bien fait, j'ai tout compris (c'est dire), maintenant je me pose simplement la question si le format csv est approprié à mon extraction.
Dans mon extraction, il y a à peu 30000 enregistrements, il es bien évident que je peux pas me permettre de doubler les séparateurs de chaines à chaque fois que je rencontre un " dans mes enregistrements. (ecran LCD 20""")
J'ai lu ton article, il est très bien fait, j'ai tout compris (c'est dire), maintenant je me pose simplement la question si le format csv est approprié à mon extraction.
Tout dépend de ton outils d'extraction.
C'est au l'outil qui génère le CSV qu'il faut modifier.
Si tu ne peux pas le modifier, je te conseille de développer l'export toi-même.
(Avec des requêtes SQL par exemple ; ou encore en utilisant un autre format d'export disponible dans ton logiciel (XML ?) et en convertissant toi-même en CSV).
Si tu ne peux pas modifier l'outils d'export et que l'outils d'export CSV intégré à ton ERP crache du CSV foireux, tu devrais contacter les développeurs pour leur signaler.
C'est au l'outil qui génère le CSV qu'il faut modifier.
Si tu ne peux pas le modifier, je te conseille de développer l'export toi-même.
(Avec des requêtes SQL par exemple ; ou encore en utilisant un autre format d'export disponible dans ton logiciel (XML ?) et en convertissant toi-même en CSV).
Si tu ne peux pas modifier l'outils d'export et que l'outils d'export CSV intégré à ton ERP crache du CSV foireux, tu devrais contacter les développeurs pour leur signaler.
En fait, j'exporte avec Query Result, donc je fais mes requêtes moi même et plutot que d'extraire en format txt avec des séparateurs ; et ensuite de remettre en forme sous excel, je me suis dit pourquoi pas essayer le format csv, et ensuite intégrer mes données dans un classeur excel mis en forme et prêt à l'emploi.
Je pense que mon problème provient plus des données à exporter (qui comme par hasard contiennent des , et des ", que de l'export elle-même.
En tous cas merci pour ta précieuse aide.
Je pense que mon problème provient plus des données à exporter (qui comme par hasard contiennent des , et des ", que de l'export elle-même.
En tous cas merci pour ta précieuse aide.
salut
pourquoi ne pas ouvrir directement le txt avec excel en passant par menu données / données externes / importer le fichier texte
pourquoi ne pas ouvrir directement le txt avec excel en passant par menu données / données externes / importer le fichier texte
Je pense que mon problème provient plus des données à exporter (qui comme par hasard contiennent des , et des ", que de l'export elle-même
Non.
Tout logiciel qui exporte en CSV doit être capable de le faire quel que soit le contenu des cellules
(Certains "bons" exporteurs CSV prennent même l'initiative d'exporter les données binaire au format hexa.)
Le fait est que la majorité des exports CSV présents dans les logiciels sont implémentés avec les pieds et n'appliquent pas la méthode que j'ai donnée.
Résultat: ça foire à la première présence de virgule, guillemet ou retour à la ligne.
Tes données ne sont pas en cause, rassures-toi.
Non.
Tout logiciel qui exporte en CSV doit être capable de le faire quel que soit le contenu des cellules
(Certains "bons" exporteurs CSV prennent même l'initiative d'exporter les données binaire au format hexa.)
Le fait est que la majorité des exports CSV présents dans les logiciels sont implémentés avec les pieds et n'appliquent pas la méthode que j'ai donnée.
Résultat: ça foire à la première présence de virgule, guillemet ou retour à la ligne.
Tes données ne sont pas en cause, rassures-toi.