Importation donnée fichier CSV en langage C

Fermé
Cayasse - 22 juin 2009 à 03:58
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 - 22 juin 2009 à 06:21
Bonjour,
Je cherche actuellement à concevoir un petit programme en langage C pour récupérer les données que j'ai dans un fichier .CSV pour ensuite les mettre dans des tableaux et ainsi pouvoir les traiter

J'ai 5 colonnes qui sont séparés par des points virgules, j'arrive à ouvrir le fichier mais je n'arrive pas à récupérer les données pour les mettre dans différents tableaux (5 en l'occurrence ici)

Pour ouvrir mon fichier j'utilise ceci :



  
 printf("Taper le nom du fichier?\n");

     scanf("%s", nom);

        if((vf1=fopen(nom,"r"))==NULL) printf("le fichier n'existe pas\n");

        else
	{

        	printf("toto\n"); // vérification que le fichier est bien ouvert
        }

   fclose(vf1);

   for (i=1; i<3; i++) 
   {
	printf("tata\n"); // vérification que le fichier est bien fermé
   }

Si vous avez des idées cela me permettrait d'avancer, merci d'avance
A voir également:

1 réponse

fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 835
22 juin 2009 à 06:21
Salut,
Tu peux lire le fichier ligne par ligne avec fgets (à condition d'avoir un buffer assez grand, ou sinon de lire tant que tu n'obtiens pas '\n' ni EOF.
Une fois que tu as ta ligne, tu peux utiliser strtok pour découper la chaîne et récupérer les éléments du tableau.
Ta vérification si le fichier est bien fermée n'est pas bonne. Si tu veux savoir que le fichier a bien fermé, tu dois vérifier que fclose(vf1) renvoie 0.
Cdlt
0