begin process at 2012 05 25 00:10:46
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive ColdFusion

 > 

Archives

 > 

Base de données

 > 

import data fichier txt avec nbr champs variables par ligne


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

import data fichier txt avec nbr champs variables par ligne

lundi 19 janvier 2004 à 16:20:01 | import data fichier txt avec nbr champs variables par ligne

hakari

Bonjour,

Je cherche comment je pourrais à l'aide de CF 5.0 extraire tous les champs d'un enregistrement contenu dans un fichier texte vers un tableau, sachant que chaque ligne d'enregistrement peut contenir un nombre variable de champs :

ex:
date,departement,commune,population,nom_referent_1,tel_referent_1,nom_referent_2,tel_referent_2,
date,departement,commune,population,nom_referent_1,tel_referent_1,nom_referent_2,tel_referent_2,nom_referent_3,tel_referent_3
date,departement,commune,population,nom_referent_1,tel_referent_1,

Je parviens à lire le fichier
<cffile action="READ" file="#expandPath('.')#\\T102.TXT" variable="Message">
<cfoutput>#Message#</cfoutput>

à extraire chaque champ
<cfloop list="#Message#" index="x" delimiters="#chr(44)##chr(13)#"> mais je n'arrive pas gérer le changement de ligne dans mon tableau.

Je voudrais ensuite pouvoir créer deux tables, la table principale avec les données fixes et une table avec les données variables (nom_referent et tel_referent) que je lierai .

Avez-vous déjà été confronté à ce type de problème, avez vous une solution ?

Merci pour votre réponse.


Hakari
mercredi 21 janvier 2004 à 13:23:49 | Re : import data fichier txt avec nbr champs variables par ligne

bastoun

Si tu veux gérer efficacement le changement de lignes, utilise 2 boucles imbriquées : une pour les lignes et une pour les champs

<cfloop list="#message#" index="#lFields#" delimiters="#chr(13)#">
<cfloop list="#lFields#" index="cField">
#cfield#
</cfloop>

</cfloop>

Mais bon... je te le déconseille si ton fichier fait quelques Mo.. tu risque de voir ton script mouliner pal mal, le temps qu'il traite le fichier.

Si je me souviens bien (ça c'est pas sur...), tu peux utiliser les drivers Merant texte ou csv(normalement livré avec CF5) pour lire ton fichier en tant que table ou DB(ça devrait te faire gagner pas mal de temps en cas de gros fichier). Si ta première ligne contient la liste des différents champs, tu ne devrais pas avoir le moindre problème, même si chaque ligne ne possède pas le nombre de colonnes escomptés (je sais que je l'avais fait, mais je sais plus si c'est en utilisant un Driver Merant ou Microsoft ou autre...)
Après tu n'as plus qu'à requeter dessus.
mercredi 21 janvier 2004 à 13:34:15 | Re : import data fichier txt avec nbr champs variables par ligne

bastoun

Pour la deuxième partie, vois si ton sgbd accepte les insertions multiples, ie quelque chose du genre:

insert into tblReferent(nom_referent,tel_referent)
values ('nom1','tel1'),('nom2','tel2'),('nom3','tel3'),.......

à ce moment là, une boucle bien pensée sur les éléments 5 et plus te permettra de le faire à la volée dans ton script (en insérant des parenthèses et en insérant la chaine générée dans une requete...)

M'enfin.. ce que je te donne n'est pas complet.. c'est juste une base, après faut que tu bosses un peu !!! ;-)
mercredi 21 janvier 2004 à 13:36:33 | Re : import data fichier txt avec nbr champs variables par ligne

bastoun

Ah oui.. et si tu n'y arrive pas à partir de ça... fais moi signe...


Cette discussion est classée dans : fichier, ligne, variables, champs, referent


Répondre à ce message

Sujets en rapport avec ce message

Retour a la ligne avec les basses de données [ par ABL-Online ] Bonjour tout le monde, j'espère que quelqu'un va pouvoir m'aider, en fait voici mon problème.Je désire trouver le moyen que quand il y a dans la basse Passage à la ligne lors de l'affichage d'une query [ par zooro ] Bonjour à tous,Je suis débutant dans le domaine et je suis face a un problème d'affichage de résultat d'une query .Voiçi les infos :Base de données de formulaire [ par massbbc ] Je suis un debutant et je voudrais faire dans mon formulaire le produit entre deux champs d'une même ligne et avoir le resultat dans le troisiéme cham nbligne fichier [ par ghost_of_prog ] Bonjour a tous, voila je sais pas si c'est le bon endroit pour ce postce que je voudrais c'est savoir combien j'ai de ligne dans mon fichier sans fair Fichier CSV, Champs vide donc double ; [ par MaitreYoda22 ] Bonjour,Je suis actuellement sur un projet ColdFusion, J'ai à traiter un gros fichier mensuel lignes par lignes (50k lignes environ).J'ai donc mis en pb upload d'image [ par issamery ] Bonjour à tous,je veux faire un listing d'images, j'ai formulaire demandant une photo à l'utilisateur, je la stocke dans une dossier et j'aimerai par CFFILE - Nom du fichier en sortie [ par jeanmarieb ] Bonjour, J'essaye d'zxporter vers Exel une partie d"un fichier qui se trouve sur une bd accès. J'arrive à ce résultat sauf quand la fénétre s'ouvre, Liste des Membres en Ligne Mysql ou odbc (serveur t4c) [ par lvdmv2 ] Bonjour voici mon premier poste sur Code Sources Je créer un Panel pour t4c, bien sur je peut prendre des script deja complet .. dans se post je vou Enregistrer mon tableau affiché dans un fichier Word [ par kabayacasa ] Bonjour, Je vous remercie tous d'abord. Je travaille avec coldfusion ver 6, serveur appache, en local. Mon problème est le suivant: ma .... affiche Code java sur l'interface graphique [ par ghaouar ] Bonjour, j'ai créer une interface graphique qui importe une image et faire tel option sur cette image ( traitement ). mais je sait pas le code qui m


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 3,775 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales