|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre du Club
![]() Inscription : juin 2005 Messages : 97 ![]() |
Bonjour,
je cherche un exemple de code asp pour importer un fichier CSV je cherche à gérer les cas tordus où les champs texte peuvent contenir un point-virgule, des guillemets ou encore un CR un peu comme ci-dessous champ1;champ2;champ3 "champ1;suite";champ2;"champ3 suite champ3" champ1;champ2;"champ3""suite" |
|
|
00
|
|
|
#2 |
|
Membre confirmé
![]() |
Techniquement, ca semble impossible, sauf si tout t'es champs sont formaté selon une norme défini, j'entend par la qu'il commence tous par la même lettre, ou qu'il font tous la même longueur...
Auttrement, si tu a acces à la source xls, la seul solution est de remplacer tout t'es ; par autre choses qui n'interragira pas avec le csv.
__________________
http://mael-decoster.fr Développeur indépendant d'applications web http://www.easy-media.fr |
|
|
00
|
|
|
#3 |
|
Membre du Club
![]() Inscription : juin 2005 Messages : 97 ![]() |
je n'ai trouvé aucun exemple complet par rapport à mon problème
je vais donc devoir coder tout cela moi meme (je voulais gagner du temps) je vais parser le texte caractere par caractere, dès lors que je tombre sur un guillemet je sais que je dois traiter de façon spéciale les 3 caracteres suivant : " (ascii 34), CR (ascii 13) et ; (ascii 59) jusqu'au guillemet suivant je posterai mon code ici si qqn est interessé |
|
|
00
|
|
|
#4 |
|
Membre confirmé
![]() Inscription : juillet 2007 Messages : 248 ![]() |
Salut,
Dans ta source, il n'y a que des champs et des "suite". Cela représente réellement ta source ? Il n'y a pas de données à attribuer à ces champs ? Tu veux importer dans quoi ?
__________________
Cordialement, Gil DERENNE Ingénieur du Son |
|
|
00
|
|
|
#5 |
|
Membre habitué
![]() Développeur informatique Inscription : octobre 2003 Messages : 448 ![]() |
Ta seule solution est de formater ton fichier CSV
|
|
|
00
|
|
|
#6 | |
|
Membre du Club
![]() Inscription : juin 2005 Messages : 97 ![]() |
Citation:
mon fichier csv va contenir des informations concernant des livres avec des champs TITRE, SOUSTITRE et RESUME par exemple dans chacun de ces champs on pourra trouver les caracteres spéciaux retour ligne, guillement ou point-virgule ce qui va casser mon fichier CSV (comme Excel le génère) je ne veux pas me compliquer la saisie dans excel en codant ("escapant") ces caracteres, la saisie doit restée naturelle je reste donc sur mon idee de parser moi meme le CSV, c'est faisable si dans excel on pouvait choisir ses propres séparateurs de champ et d'enregistrement je n'aurais pas de problème, hélas ce n'est pas possible... |
|
|
|
00
|
|
|
#7 |
![]() ![]() Inscription : avril 2007 Messages : 1 364 ![]() |
Bonjour
j'ai une question : Si les champs peuvent contenir des point-virgules (ou non), des guillemets (ou non), des virgules (ou non), comment comptes-tu différencier les champs ? Comment savoir si un caractere point-virgule est un séparateur ou du contenu ? Je ne pense pas qu'un parsing de la sorte soit faisable, et surtout fiable ! Pour peu qu'un utilisateur saisisse un guillemet sans le refermer (c'est classique !), ton analyse sera faussée jusqu'au bout ! La saisie ne peut-elle se faire que dans excel ? Pourquoi pas un formulaire html et une ou deux pages ASP avec une petite bdd access ? (ou même un bête formulaire access) ?
__________________
" La vie c'est quelque chose de très fort et de très beau.... La vie appartient a tous les vivants. It's both a dream and a feeling. C'est être ce que nous ne sommes pas sans le rester. La vie c'est mourir aussi....Et mourir c'est vraiment strong...c'est rester en vie au delà de la mort...Tous ceux qui sont morts n'ignorent pas de le savoir." (J.C. VanDamme, humoriste et philosophe belge . A moins que ce ne soit l'inverse ...)Chuck Norris comprend JC Van Damme. ![]() |
|
|
00
|
|
|
#8 | ||
|
Membre confirmé
![]() Inscription : juillet 2007 Messages : 248 ![]() |
Le mieux n'est-il pas de demander un export XML à Excel pour pouvoir l'importer en XML directement sans traitement préalable...
Code XML :
__________________
Cordialement, Gil DERENNE Ingénieur du Son |
||
|
|
00
|
|
|
#9 | |
|
Membre du Club
![]() Inscription : juin 2005 Messages : 97 ![]() |
Citation:
exemple l'utilisateur saisit [il a dit "bonjou] Excel va enregistrer ["il a dit ""bonjou"] donc les guillemets non fermés ne sont pas un probleme je vais pas faire l'algo ici mais dès lors qu'Excel a "quoté" une cellule : si je rencontre un point-virgule je l'ignore si je rencontre un CR je l'igone si je rencontre un guillement c'est la fin de la cellule (du champ) sauf si il est doublé, dans ce cas je continue jusqu'au guillement généré par excel |
|
|
|
00
|
|
|
#10 |
|
Membre du Club
![]() Inscription : juin 2005 Messages : 97 ![]() |
|
|
|
00
|
|
|
#11 |
|
Membre confirmé
![]() Inscription : juillet 2007 Messages : 248 ![]() |
Mouais...
Il doit y avoir un add-on à Excel qui permette un export en XML. Le mieux est d'aller faire un tour sur le site de Office chez Microsoft.
__________________
Cordialement, Gil DERENNE Ingénieur du Son |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com