Bonjour à tous !
Excusez-moi de vous déranger, j'avais simplement 3 petites questions toutes simples à vous poser :
1) Mon but est de lire 3 colonnes de chiffres sur un fichier .txt et de les réécrire sur un autre fichier .txt (ça n'a aucun intérêt mais c'est juste pour comprendre).
Voilà mon code :
En fait tout marche bien sauf que je n'ai que la première ligne qui s'affiche : je ne lis que les 3 premiers nombres.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36 # include <iostream> # include <fstream> # include <stdlib.h> # include <string> using namespace std; int main() { int const nombreLignes(5); int tab1[nombreLignes]; int tab2[nombreLignes]; int tab3[nombreLignes]; ifstream fichier1("donnees.txt", ios::in); // lecture du fichier : je stocke les chiffres sous la forme de tableaux for (int i=0 ; i<nombreLignes ;++i) { fichier1 >> tab1[i] >> tab2[i] >> tab3[i]; fichier1.close(); } ofstream fichier2 ("donnees1.txt" , ios :: out) ; // constitution du fichier : je réécris les chiffres stockés for (int i=0 ; i<nombreLignes ;++i) { fichier2 << tab1[i] << tab2[i] << tab3[i] << "\n" << endl ; fichier2.close(); } return 0; }
2) En plus j'aimerais bien lire un fichier csv suivant le même principe et recopier les nombres sur un txt. Sur le csv, les nombres sont séparés par des ";".
Mon code est donc le suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35 # include <iostream> # include <fstream> # include <stdlib.h> # include <string> using namespace std; int main() { int const nombreLignes(5); int tab1[nombreLignes]; int tab2[nombreLignes]; int tab3[nombreLignes]; ifstream fichier1("donnees.txt", ios::in); // lecture du fichier : je stocke les chiffres sous la forme de tableaux for (int i=0 ; i<nombreLignes ;++i) { fichier1 >> tab1[i] >> ";" >> tab2[i] >> ";" >> tab3[i]; fichier1.close(); } ofstream fichier2 ("donnees1.txt" , ios :: out) ; // constitution du fichier : je réécris les chiffres stockés for (int i=0 ; i<nombreLignes ;++i) { fichier2 << tab1[i] << tab2[i] << tab3[i] << "\n" << endl ; fichier2.close(); } return 0; }
Mais ça ne marche pas...
3) Enfin, toujours dans le même genre, je voudrais ne lire que la première colonne et la quatrième.
et ça marche pas non plus.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36 # include <iostream> # include <fstream> # include <stdlib.h> # include <string> using namespace std; int main() { int const nombreLignes(5); int tab1[nombreLignes]; int tab2[nombreLignes]; int entier ifstream fichier1("donnees.txt", ios::in); // lecture du fichier : je stocke les chiffres sous la forme de tableaux for (int i=0 ; i<nombreLignes ;++i) { fichier1 >> tab1[i] >> entier >> entier >> tab2[i]; fichier1.close(); } ofstream fichier2 ("donnees1.txt" , ios :: out) ; // constitution du fichier : je réécris les chiffres stockés for (int i=0 ; i<nombreLignes ;++i) { fichier2 << tab1[i] << " " << tab2[i] << "\n" << endl ; fichier2.close(); } return 0; }
Savez-vous comment faire ?
Merci beaucoup en tout cas.
Partager