Problems reading binary file in FORTRAN

  • #1
I am having problems reading a binary file in FORTRAN. I know that the file was generated by the code below:

open(7,file='hctd1_kxx.dat',form='unformatted')
...
write(7) iscl
write(7) inode,npoints
write(7) (kxm(i)*(10**(prop(i))),i=1,npoints)
close(7)

iscl, inode, npoints are integer*4 and kxm(), prop() are real*4

I am trying to read the file using the code below (variables have consistent data types and sizes):

open(11,file='hctd1_kxx.dat',status='old', form='unformatted', ACTION='READ')
...
read(7) iscl
read(7) inode,npoints
read(7) (single(i),i=1,npoints)

The program reads OK until it reaches the line above, where it always crashes after performing 256 iterations (it should go to npoints=406924).

I tried different input files and opening the file using different options for the CONVERT specifier and it keeps crashing after the first 256 entries.

The error message I get is the following: "forrtl: severe (67): input statement requires too much data".

Does anyone have any suggestions?

Thanks a lot for your attention!

Marcelo
P.S.: my compiler is Compaq Visual Fortran 6.5
 

Answers and Replies

  • #2
156
0
Have you checked that it creates a file of the correct size before you try to read the data back?
 

Related Threads on Problems reading binary file in FORTRAN

Replies
4
Views
3K
Replies
5
Views
4K
Replies
9
Views
18K
Replies
6
Views
9K
Replies
1
Views
5K
  • Last Post
Replies
2
Views
3K
Replies
7
Views
1K
Replies
12
Views
14K
Replies
2
Views
2K
Top