Bonsoir,
Quelqu'un sait il me dire quel est la syntaxe pour sauver les données dans un fichier csv ?
Je sais qu'il y a une histoire avec le " ; " qui sépare les champs mais je n'ai rien trouver d'autre à ce sujet .
Merci à vous
Issou .
Version imprimable
Bonsoir,
Quelqu'un sait il me dire quel est la syntaxe pour sauver les données dans un fichier csv ?
Je sais qu'il y a une histoire avec le " ; " qui sépare les champs mais je n'ai rien trouver d'autre à ce sujet .
Merci à vous
Issou .
Salut
Tu crées un fichier texte et tu écris tes données séprées par un ; (ou un autre délimiteur éventuellement)
Exemple
tu as un article composé de 3 champs
Nom : caractères
Prenom caractères
age : entier
Tu vas faire une boucle de fprintf pour la création du fichier
Lecture du fichier et remplissage du tableauCode:
1
2
3
4
5 f = fopen("fichier.csv", "w"); // je passe le test d'ouverture correcte du fichier for(i = 0; i < nbc; i++) fprintf(f, "%s;%s;%d\n", tab[i].nom, tab[i].prenom, tab[i].age); fclose(f);
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 char *ptr; f = fopen("fichier.csv", "r"); // je passe le test d'ouverture correcte du fichier i = 0; // on initialise l'index du tableau while (fgets(buf, sizeof(buf), f) != NULL) { ptr = strtok(buf, ";"); // on copie le nom; strcpy(tab[i].nom, ptr; // on copie le prenom; ptr = strotk(NULL, ";"); strcpy(tab[i].prenom, ptr); // on memorise l'age ptr = strtok(NULL, ";"); tab[i].age = strtol(ptr, NULL, 10); on incremente l'indice tu tableau i++; } fclose(f);