2010-05-19 3 views

Répondre

2

Pourquoi ne pas lire les données à partir du serveur SQL dans le DataGrid au lieu de le lire à partir du fichier texte? Le chargement des données d'une base de données dans une grille devrait être facile dès la sortie de la boîte.

1

Il n'est pas clair à partir de votre question où les données commencent, ou pourquoi vous avez besoin du fichier texte. Cependant, je vais répondre à l'un de vos points. Il y a beaucoup de façons de lire un fichier texte. Voici comment je le fais habituellement il:

D'abord, écrire un fichier avec le schéma

using (StreamWriter sw = new StreamWriter(sPath + @"\schema.ini")) 

      { 
       sw.WriteLine("[" + sFile + "]"); 
       sw.WriteLine("ColNameHeader=False"); 
       sw.WriteLine("Format=FixedLength"); 
       sw.WriteLine("Col1=CO_ID Text Width 2"); 
       sw.WriteLine("Col2=AGENCY_CD Text Width 10"); 
       // lines for additional columns here 
       sw.Close(); 
       sw.Dispose(); 
      } 

lire ensuite les données à un dataset à l'aide ODCB.

  string cs = @"Driver={Microsoft Text Driver (*.txt; *.csv)};DBQ=" + sPath; 
      OdbcConnection cn = new OdbcConnection(cs); 
      string q = @"select * from [" + sNewFN + "]"; 
      OdbcDataAdapter da = new OdbcDataAdapter(q, cn); 
      da.Fill(ds, "MyTable"); 

Le tableau ds.Tables [ "MyTable"] est la source de données pour le DataGrid

Il y a des informations sur cette méthode ici:

http://msdn.microsoft.com/en-us/library/ms714091%28v=VS.85%29.aspx

+0

Followup: Windows 7 ne supporte pas le lecteur de texte. – SeaDrive

Questions connexes