Charger fichier txt dans un dataset en vb net [Résolu]

Syphou 52 Messages postés jeudi 27 avril 2006Date d'inscription 6 juin 2011 Dernière intervention - 25 avril 2007 à 10:37 - Dernière réponse : Syphou 52 Messages postés jeudi 27 avril 2006Date d'inscription 6 juin 2011 Dernière intervention
- 25 avril 2007 à 11:49
Bonjour,
Je possède un fichier au format txt contenant 30 000 articles.
Le fichier est sutructuré en différente colonne séparée par une tabulation. Si j'ouvre excel et que je fai importe le fichier il me les met bien dans des colonnes. Donc le fichier txt est OK.
Ce que j'aimerai bien cest importer ce fichier dans une table d'un dataset.

J'arrive a charger un fichier excel dans une table mais je doit charger le fichier txt.
Evidemment je pourrai manuellement importer le fichier txt dans excel, sauvegarder puis l'importer par programmation dans un dataset, mais je voudrai bien tout faire par programmation.

Quelqu'un sais comment faire? soit par programmation charger le fichier txt dans excel, ensuite je chargerai par programmation le fichier excel dans un dataset. Soit encore mieu directement charger le fichier txt dans mon dataset.

Merci
Afficher la suite 

3 réponses

Répondre au sujet
Syphou 52 Messages postés jeudi 27 avril 2006Date d'inscription 6 juin 2011 Dernière intervention - 25 avril 2007 à 11:49
+3
Utile
Changement de tactique ^^

Je vais lire mon fichier séquentiellement, et spliter avec le cartatère TAB
Je me retrouve anisi chaque foi avec un tableau de chaine, exactement comme si javais une table avec des colonnes


Try








Dim
sr

As
StreamReader =

New
StreamReader("MonFichier.txt", System.Text.Encoding.ASCII)


Dim
ligne

As



String






Dim
TabLigne()

As



String

ligne = sr.ReadLine




'saute la premiere ligne (cest les titres des colonnes)






Do

ligne = sr.ReadLine


TabLigne = ligne.Split(ControlChars.Tab)


TabLigne(0)
TabLigne(1)
TabLigne(2)
...







Loop



Until
ligne

Is



Nothing

sr.Close()







Catch
ex

As
Exception


End



Try

Merci quand meme :-)
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de Syphou
Shad108 8 Messages postés mardi 26 juillet 2005Date d'inscription 29 mai 2007 Dernière intervention - 25 avril 2007 à 10:57
0
Utile
Bonjour,

J'ai fais ca il n'y pas très longtemps par contre ton fichier source a un petit inconvénient c'est qu'il n'utilise pas le séparateur normal pour ce genre de fichier qui devrait être le point-virgule, sinon pour info pour charger ton fichier dans un recordset ADO:

connection_fichier_csv.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source='lerepertoiredetonfichier';Extended Properties='text;HDR=Yes;FMT=Delimited'"

connection_fichier_csv.Open

ensuite tu ouvre le fichier csv que tu veux dans ce répertoire:

requete = "select * from ["lenomdetonfichier"]"
rs_fichier_csv.Open requete, connection_fichier_csv, adOpenStatic, adLockReadOnly

pour parcourir tes enregistrements:

Do While Not rs_fichier_csv.EOF
ligne = Split(rs_fichier_csv.Fields(0), ";")

'Change d'enregistrement
rs_fichier_csv.MoveNext
loop

J'espere que ca pourra t'aider.

@+
Commenter la réponse de Shad108
Syphou 52 Messages postés jeudi 27 avril 2006Date d'inscription 6 juin 2011 Dernière intervention - 25 avril 2007 à 11:49
0
Utile
Changement de tactique ^^

Je vais lire mon fichier séquentiellement, et spliter avec le cartatère TAB
Je me retrouve anisi chaque foi avec un tableau de chaine, exactement comme si javais une table avec des colonnes


Try








Dim
sr

As
StreamReader =

New
StreamReader("MonFichier.txt", System.Text.Encoding.ASCII)


Dim
ligne

As



String






Dim
TabLigne()

As



String

ligne = sr.ReadLine




'saute la premiere ligne (cest les titres des colonnes)






Do

ligne = sr.ReadLine


TabLigne = ligne.Split(ControlChars.Tab)


TabLigne(0)
TabLigne(1)
TabLigne(2)
...







Loop



Until
ligne

Is



Nothing

sr.Close()







Catch
ex

As
Exception


End



Try
Commenter la réponse de Syphou

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.