我有一个二进制文件,可以用 C 读取,代码如下
int it,ix;
double par1,par2,par3,par4,par5,par6;
fp = fopen("my_binary_file", "r");
assert(fp != NULL);
fscanf(fp, "%d %lf %lf %lf \n",&it, &par1, &par2, &par3);
fscanf(fp, "%d %lf %lf %lf \n",&ix, &par4 ,&par5,&par6);
我尝试使用这段代码在 Fortran 90 中读取相同的文件
real(kind=8):: par1,par2,par3,par4,par5,par6
integer :: it,ix
open(1,file='my_binary_file',form='unformatted')
read(1) it,par1,par2,par3
read(1) ix,par4,par5,par6
但我收到文件结束错误。我试着一起读这两行
read(1) it,par1,par2,par3,ix,par4,par5,par6
我读了一些东西,但参数不是我所期望的。这意味着我正在读取错误的字节或变量的声明是错误的。你觉得你能帮上忙吗?