Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.
28800 Discussions

problem at severe(36)--attempt to access non-existent record

newbiubiu
Beginner
1,232 Views
the filename is6300kb
OPEN(3,FILE=FILENAME,STATUS='OLD',RECL=3225600,ACCESS='DIRECT',FORM='UNFORMATTED')
error followed:
forrtl: severe (36): attempt to access non-existent record, unit 3,f:\tmi_20060801v4,
i wonder whether the value of recl isn't approperite,thanks for anyone solves the ploblem!
0 Kudos
1 Solution
jparsly
New Contributor I
1,232 Views
Are you expecting the record length to be measured in bytes?

Default for CVF/IVF compilers is to measure record length for unformatted direct access files in WORDS.

The filesize of 6300kb looks like the file might hold 2 records of 3 million+ bytes.
You can try dividing your record size by 4, or use a compiler switch to override the default behavior.

View solution in original post

0 Kudos
3 Replies
jparsly
New Contributor I
1,233 Views
Are you expecting the record length to be measured in bytes?

Default for CVF/IVF compilers is to measure record length for unformatted direct access files in WORDS.

The filesize of 6300kb looks like the file might hold 2 records of 3 million+ bytes.
You can try dividing your record size by 4, or use a compiler switch to override the default behavior.

0 Kudos
TimP
Honored Contributor III
1,232 Views
Quoting - jparsly
Are you expecting the record length to be measured in bytes?

Default for CVF/IVF compilers is to measure record length for unformatted direct access files in WORDS.

The filesize of 6300kb looks like the file might hold 2 records of 3 million+ bytes.
You can try dividing your record size by 4, or use a compiler switch to override the default behavior.

Compiler switches to change default record length units and invoke buffering on all files except stdin/stdout:
/assume:byterecl,buffered_io
other ways are offered as well.
0 Kudos
newbiubiu
Beginner
1,232 Views

thank u very much...i use the compile switch to use bytes as recl,and it really works:)

0 Kudos
Reply