sauvegarde et chargement à partir d'un fichier
je sauvegarde les valeurs d'un tableau multidimensionel dans un fichier, que j'aimerai bien recharger dans le tableau. mais je constate quand je teste si tout ce passe bien qu'il y a un problème. les éléments du tableau sont de types réel (double). le constat est que une recharger dans le tableau la partie entier du réel est transformé en zéro s'il était strictement positif.
exemple:
valeurs que je sauvegarde
Citation:
0.182443
0.91528
-0.0337707
4.68092
-1.22098
0.241877
0.0843247
1.51347
valeur contenu ds le tableau après avoir recharger.
Citation:
0.182443
0.91528
-0.0337707
0.68092
-1.22098
0.241877
0.0843247
0.51347
voici le code:
Code:
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
|
void CBackProp::saveWeight(char * filename){
int i,j,k;
ofstream sypnaOutfile(filename, ios::out | ios::binary);
if(!sypnaOutfile){
cout<<"Impossible de créer le fichier"<<endl;
exit(-1);
}
for(i=1;i<3;i++)
for(j=0;j<lsize[i];j++)
for(k=0;k<lsize[i-1]+1;k++){
sypnaOutfile << weight[i][j][k];
// weight[i][j][k]= (double)(rand())/(RAND_MAX/2) - 1;//32767
//fichier >> weight[i][j][k];
//outFile <<val;
//cout<<weight[i][j][k]<<endl;
}
}
void CBackProp::loadWeight(char * filename){
int i,j,k;
ifstream sypnaInfile(filename, ios::in | ios::binary);
if(!sypnaInfile){
cout<<"Le fichier d'entrée n'existe pas"<<endl;
exit(-1);
}
for(i=1;i<3;i++)
for(j=0;j<lsize[i];j++)
for(k=0;k<lsize[i-1]+1;k++){
sypnaInfile >> weight[i][j][k];
// weight[i][j][k]= (double)(rand())/(RAND_MAX/2) - 1;//32767
//fichier >> weight[i][j][k];
//outFile <<val;
cout<<weight[i][j][k]<<endl;
}
} |
j'aimerai savoir d'ou vien le Problème.
merci d'avance.