Bonjour,
je cherche a ecrire des donnees dans un fichier binaire qui doit etre lu ensuite par un programme fortran. J'ai essayé le programme 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
#include <iostream>
#include <fstream>
using namespace std;
 
main() {
 
 ofstream OutFile("test.b", std::ios_base::binary);
 int var=3;
 
 OutFile.write(reinterpret_cast<const char*>(&var),sizeof(int));
 
 OutFile.close();
 
}
J'obtiens en l'exécutant le fichier test.b que j'essaye de lire en fortran comme suit :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
program lire
 
integer lunite
integer var
 
open(lunite,file='test.b',form='unformatted')
read(lunite) var
print*,var
 
end
ce qui me renvoit le message d'erreur suivant :
Fortran runtime error: Unformatted file structure has been corrupted

Existe-t-il des méthodes de fstream pour écrire un fichier binaire à un format lisible par fortran ?
Merci