cs_bastoun
Messages postés164Date d'inscriptiondimanche 1 octobre 2000StatutMembreDernière intervention23 mars 2007
-
21 avril 2002 à 01:38
cedlannoy
Messages postés13Date d'inscriptionvendredi 23 janvier 2004StatutMembreDernière intervention23 février 2013
-
3 août 2006 à 11:11
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
cedlannoy
Messages postés13Date d'inscriptionvendredi 23 janvier 2004StatutMembreDernière intervention23 février 2013 3 août 2006 à 11:11
Question,
si j'ai un champ de vide et donc deux ; qui se suivent, comment faut-il faire pour le remonter correctement dans une base, car sinon les champs se décallent!
Encore une petite aide... Si comme moi, vous avez deux tab qui se suivent (en gros deux champs vides), il faut faire une petite moulinette:
<cfloop condition = "#Find("#Chr(9)##Chr(9)#", "#ligne#",1)#">
<cfset ligne=Replace(#ligne#, "#Chr(9)##Chr(9)#", "#Chr(9)#Empty#Chr(9)#", "All")>
</cfloop>
Et voili :D
Merci beaucoup, ce code m'a fait gagner pas mal de temps ;o)
Pour informations:
- les deux chaines "Chr(13) & Chr(10)" correspondent à une nouvelle ligne ("the two-character string Chr(13) & Chr(10) is the newline string" d'après la doc de Coldfusion).
- Si vos champs sont séparés par des tabulations il faut remplacer ";" par #chr(9)#, ce qui donne:
<cfset PROD_REF = #GetToken('#ligne#',1,'#chr(9)#')#>
Voili
+
cs_bastoun
Messages postés164Date d'inscriptiondimanche 1 octobre 2000StatutMembreDernière intervention23 mars 20071 21 avril 2002 à 01:38
Pour le premier exemple, il est aussi possible d'utiliser un driver texte et de déclarer le fichier en tant que base, en indiquant quel est le séparateur des champs. Pour maintenir le contenu c'est plus simple à utiliser.
3 août 2006 à 11:11
si j'ai un champ de vide et donc deux ; qui se suivent, comment faut-il faire pour le remonter correctement dans une base, car sinon les champs se décallent!
merci
ced
19 avril 2004 à 17:37
<cfloop condition = "#Find("#Chr(9)##Chr(9)#", "#ligne#",1)#">
<cfset ligne=Replace(#ligne#, "#Chr(9)##Chr(9)#", "#Chr(9)#Empty#Chr(9)#", "All")>
</cfloop>
Et voili :D
19 avril 2004 à 14:35
Pour informations:
- les deux chaines "Chr(13) & Chr(10)" correspondent à une nouvelle ligne ("the two-character string Chr(13) & Chr(10) is the newline string" d'après la doc de Coldfusion).
- Si vos champs sont séparés par des tabulations il faut remplacer ";" par #chr(9)#, ce qui donne:
<cfset PROD_REF = #GetToken('#ligne#',1,'#chr(9)#')#>
Voili
+
21 avril 2002 à 01:38