Bonjour,

Je travaille sur des fichiers de mesures météorologiques (txt) regroupées en colonnes. Une fois que j'ai extrait chaque colonne pour pouvoir l'utiliser seule, l'entreprise me demande de stocker ces données sous format 16bits dans un fichier binaire. J'aimerais savoir comment faire pour que, en ouvrant mon fichier de base et en le lisant en ASCII je puisse en faire plusieurs fichiers .bin avec la conversion que cela implique ...
Ci-dessous le code correspondant à l'extraction des colonnes de données, mais pour le moment la lecture ET l'écriture se font sous format ASCII ...
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
 
#include <iostream>
#include <fstream>
#include <string>
 
 
int main()
{
using namespace std;
 
 
 
 
 
	ifstream liste("liste_de_fichiers.txt", ios::in);
 
	if(liste)
	{
		string lisligne;
		string filename0, filename1,filename2,filename3,filename4;
		string ligne;
		double doublea,doubleb,doublec,doubled,doublee,doublef;
		double double1, double2, double3, double4, double5, double6;
 
 
		while(getline(liste, lisligne))
		{
 
				liste >> filename0; //lecture du nom de fichier dans un fichier "liste de fichiers"
				filename1 = "/home/rs/Desktop/eclats/" + filename0 + "_1"; //création du nom du fichier où sera retranscrite la colonne 1
				filename2 = "/home/rs/Desktop/eclats/" + filename0 + "_2"; //colonne 2
				filename3 = "/home/rs/Desktop/eclats/" + filename0 + "_3"; // 3
				filename4 = "/home/rs/Desktop/eclats/" + filename0 + "_4"; // 4
				filename0 = "/home/rs/Desktop/données_modèles/données_modèles/2011/" + filename0; //Nom du fichier de base (avec toutes les colonnes)
 
				ifstream fichier0(filename0.c_str(), ios::in); //fichier lecture
				ofstream fichier1(filename1.c_str(), ios::out); // ecritures
				ofstream fichier2(filename2.c_str(), ios::out);
				ofstream fichier3(filename3.c_str(), ios::out);
				ofstream fichier4(filename4.c_str(), ios::out);
 
				if(fichier0 && fichier1 && fichier2 && fichier3 && fichier4)
					{
 
							fichier0 >> doublea >> doubleb >> doublec >> doubled >> doublee >> doublef; //lecture des 6 colonnes
							//retranscription d'une colonne par fichier							
							fichier1 << doublec*100;
							fichier2 << doubled*100;
							fichier3 << doublee*100;
							fichier4 << doublef*100;
						while(getline(fichier0, ligne))  // tant que l'on peut mettre la ligne dans "contenu"
						{							
 
									fichier0 >> double1 >> double2 >> double3 >> double4 >> double5 >> double6;
									fichier1 << double3*100;
									fichier2 << double4*100;
									fichier3 << double5*100;
									fichier4 << double6*100;
 
						}
						//fichiers traités
						cout<<filename0<<endl;
						cout<<filename1<<endl;
						cout<<filename2<<endl;
						cout<<filename3<<endl;
						cout<<filename4<<endl;
					}
					else
						cerr<<"Impossible d'ouvrir le fichier!1"<<endl;
 
		}
 
		liste.close();
	}
	else
		cerr<<"Impossible d'ouvrir le fichier!"<<endl;
 
	return 0;
}
Merci d'avance !