Partage
  • Partager sur Facebook
  • Partager sur Twitter

Lecture de fichier CSV en C#

22 août 2017 à 11:25:37

Bonjour, j'aimerais lire correctement le contenu de mon fichier CSV pour pouvoir l'enregistrer en base de donnée par la suite.

J'ai fait une fonction pour le lire et split les " ; " :

private static void Test_Migration()
{
   int compteur = 0;
   string ligne;
   Char caractere = ';';

   System.IO.StreamReader fichier = new System.IO.StreamReader(@"C:\Migration\ARTICLES SECTORISE.csv");

   while ((ligne = fichier.ReadLine()) != null)
   {
      String[] substrings = ligne.Split(caractere);

       foreach (var substring in substrings)
       {
          Console.WriteLine(substring);
       }

       compteur++;
     }

     fichier.Close();
     System.Console.WriteLine("Nombre de lignes : {0}.", compteur);
}


Seulement maintenant je bloque.. je ne vois pas comment je pourrais faire pour traiter chaque élément

exemple :

J'aimerais stocké dans une variable différente a chaque fois chaque case..je ne vois pas comment..

J'aimerais beaucoup votre aide, merci d'avance

  • Partager sur Facebook
  • Partager sur Twitter
22 août 2017 à 11:45:55

Dans une DataTable d'un DataSet, non ?
  • Partager sur Facebook
  • Partager sur Twitter
Je recherche un CDI/CDD/mission freelance comme Architecte Logiciel/ Expert Technique sur technologies Microsoft.
22 août 2017 à 11:50:15

Je sais ou les stockés j'ai ma base pour cela mais je veux dire, comment je peux arriver a lire chaque élément en C#

Je suis un peu perdu

  • Partager sur Facebook
  • Partager sur Twitter
22 août 2017 à 12:21:20

> comment je peux arriver a lire chaque élément en C#

C'est le rôle de la boucle ligne 13 à 16 qui affiche chaque élément lu.

  • Partager sur Facebook
  • Partager sur Twitter
Je recherche un CDI/CDD/mission freelance comme Architecte Logiciel/ Expert Technique sur technologies Microsoft.
22 août 2017 à 13:32:39

Sinon au lieu de Split toi même et de prendre le risque que certains éléments avec une virgule soient quotés, tu peux utiliser CsvHelper. Il y a une floppée d'outils dédié au traitement de CSV, autant les utiliser.

Certaines interfaces de base de données proposent même déjà l'importation de CSV.

  • Partager sur Facebook
  • Partager sur Twitter
MysteryDash / 100 MPM / Développeur Freelance C#.NET / osu! / PS4 Offline Remote Play
21 janvier 2020 à 15:27:11

Bonjour

sans boucle; 

Exemple 

Id = substrings[0]

edition = substrings[1] 

Etc ...

Cordialement 

  • Partager sur Facebook
  • Partager sur Twitter
22 janvier 2020 à 11:52:50

Bonjour,

Déterrage

Citation des règles générales du forum :

Avant de poster un message, vérifiez la date du sujet dans lequel vous comptiez intervenir.

Si le dernier message sur le sujet date de plus de deux mois, mieux vaut ne pas répondre.
En effet, le déterrage d'un sujet nuit au bon fonctionnement du forum, et l'informatique pouvant grandement changer en quelques mois il n'est donc que rarement pertinent de déterrer un vieux sujet.

Au lieu de déterrer un sujet il est préférable :

  • soit de contacter directement le membre voulu par messagerie privée en cliquant sur son pseudonyme pour accéder à sa page profil, puis sur le lien "Ecrire un message"
  • soit de créer un nouveau sujet décrivant votre propre contexte
  • ne pas répondre à un déterrage et le signaler à la modération

Je ferme ce sujet. En cas de désaccord, me contacter par MP.

  • Partager sur Facebook
  • Partager sur Twitter
Seul on va plus vite, ensemble on va plus loin ... A maîtriser : Conception BDD, MySQL, PHP/MySQL