0/5 (9 avis)
Snippet vu 20 943 fois - Téléchargée 38 fois
<% 'Nom du fichier à traiter csv_to_read="fichier.csv" 'Ouverture du fichier. set fso = createobject("scripting.filesystemobject") set act = fso.opentextfile(server.mappath(csv_to_read)) '============================================================ 'ETAPE 1 : 'TRAITEMENT DE LA PREMIERE LIGNE : nom des champs. '(Supprimer cette partie si pas nom de champs en 1er ligne). '============================================================ 'Lecture du fichier. imported_text = act.readline 'Suppression des doubles quotes. imported_text = replace(imported_text,chr(34),"") 'Suppression des retours à ligne et ajout d'un ";". imported_text = replace(imported_text,chr(13),";") 'Traitement du nom des champs. split_text=split(imported_text,";") num_imported=ubound(split_text)+1 '============================================================ '============================================================ 'ETAPE 2 : 'TRAITEMENT DU RESTE DU FICHIER : les valeurs des champs '============================================================ 'Lecture du fichier. total_imported_text = act.readall 'Suppression des doubles quotes. total_imported_text = replace(total_imported_text,chr(34),"") 'Si valeur du champ vide (;"";), on ajoute "-". total_imported_text = replace(total_imported_text,";;",";-;") 'Traitement du nom des champs. total_split_text=split(total_imported_text,";") total_num_imported=ubound(total_split_text) '============================================================ %> <table width="100%"> <tr> <% '================================================================= 'Création des cellules du tableau pour affichage du nom des champs For table = 0 To num_imported -1 %> <td width="<% response.write 100/(num_imported) 'largeur auto de la cellule %>%"><font face="Verdana" size="1"> <b><%= split_text(count) %></b> </font></td> <% count=count+1 Next '================================================================= %> </tr> <tr> <% 'Remise à zéro du compteur count=0 ' Détermine le nombre de colonne pour le fichier. For tablea = 0 To (total_num_imported/ (num_imported)-1) %> <% '================================================================= 'Création des cellule pour les colonne du fichier. For table = 0 To num_imported -1 %><td width="<%= 100/(num_imported) %>%"><font face="Verdana" size="1"> <%= total_split_text(count) %> </font></td> <% count = count + 1 Next '================================================================= %> </tr> <% Next %> </table> </FONT>
25 févr. 2003 à 16:40
'---- Plus de détails sur le Fichier Schema.ini
'---------------------------------------------------
Si on se connecte par ODBC sur un Fichier .txt ou .CSV, à priorie on a besoin de certains paramétrage, à savoir :
1) le Charset : ANSI 1252, 1256,....
2) Le délimiteur des Champs
3) Si la première ligne contient les noms de colonnes ou pas
4) Le nom du fichier CSV en question
5) Le type des Données que l'ODBC récupère ( Integer, string, decimal,....)
6) Formater certaines chaines : exemple formater les dates
> Ces paramètres ont des valeurs par défaut definis dans la regsitry. Si jamais on veux les changer, on edite un fichier qu'on appelle Schema.ini. L'ODBC, on se connectant au fichier CSV, vérifie l'existance ou pas d'un fichier qui a le nom "schema.in" :
* S'il existe, alors l'ODBC prend les paramètres qui y sont définis,
* Sinon, il prend les valeurs par défaut définies au niveau de la regsitry.
Je vous donne ci-dessous un exemple d'une entrée du fichier schema.ini, que j'ai édité moi même pour paramétrer mon CSV "auteurs.csv" :
[auteurs.CSV] ----- Nom du CSV
Format = TabDelimited ----- Le délimiteur : tabultaion
CharacterSet=1252 ----- Charset : ANSI ( 1252)
ColNameHeader=True ----- Noms de colonnes sur la 1ère ligne
Col1=ID_AUT Integer Width 4
Col2=NOM Char Width 20
Col3=PRENOM Char Width 20
Col4=Date_N Date
Note : Dans le schema.ini, on peut paramétrer 1-n fichiers .CSV (ou .txt). Pour chaque fichier, on peut ainsi définir, par exemple, des délimiteurs différents pour des fichiers différents. A noter que le fichier "Schema.ini" doit exister sur le même répertoir que les fichier quii y sont définies.
A+
25 févr. 2003 à 15:36
25 févr. 2003 à 15:27
'--- CSVPATH : le répertoire qui contient "MonFichier.CSV"
'--- STRSOURCEDSN : Chaine de Connexion à notre base de données (MonFichier.CSV)
STRSOURCEDSN = "Provider=Microsoft.Jet.OLEDB.4.0;" & vbCrLf & _
"Data Source=" & CSVPATH & ";" & vbCrLf & _
"Extended Properties=""text;HDR=YES;FMT=Delimited""" & vbCrLf
sReq = "select * from [MonFichier.CSV]"
Set oRst= server.CreateObject("ADODB.Recordset")
Set oRst = oSrcCnx.Execute(sReq)
'Ainsi on manipule oRst pour gérer/afficher /consulter les données de notre CSV.
'--- On Peut même utuliser le fichier Schema.ini pour paramétrer le spérateur de notre CSV, le type des données dedans ( Charset,ColType,ColWidth,....)
J'espère bien que c utile pour vous,
A+
8 juin 2002 à 10:27
Merci Nix ;-)))
7 juin 2002 à 22:01
Tu me le rappelle etrangement par tes commantaires.
Moi aussi je serais curieux de voir de quoi un fameux Sirch est capable de faire a part de se cacher sous d'autres pseudos.
j'espere que le 10/10 que tu t'es mis te rassurera.
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.