program cio_file
double precision tdbjd, ciora
character infil*24, outfil*24, iden*40
1 format ( a )
2 format ( f16.6, f24.14 )
! GET FILE IDENTIFIERS
infil = 'CIO_RA.TXT'
outfil = 'CIO_RA.DA'
! WRITE ( *, * ) 'ENTER INPUT FILENAME: '
! READ ( *, * ) INFIL
! WRITE ( *, * ) 'ENTER OUTPUT FILENAME: '
! READ ( *, * ) OUTFIL
! OPEN INPUT FILE
open ( unit=18, file=infil, form='FORMATTED', &
access='SEQUENTIAL', status='OLD' )
! OPEN OUTPUT FILE
open ( unit=19, file=outfil, form='UNFORMATTED', &
access='DIRECT', recl=16, status='UNKNOWN' )
! READ INPUT FILE IDENTIFIER
read ( unit=18, fmt=1 ) iden
n = 1
! MAIN READ-WRITE LOOP
50 read ( unit=18, fmt=2, end=70 ) tdbjd, ciora
n = n + 1
write ( unit=19, rec=n ) tdbjd, ciora
if ( mod ( n, 1000 ) == 0 ) then
iyear = nint ( ( tdbjd - 2451545.0 ) / 365.25d0 + 2000.d0 )
write ( *, * ) 'DONE THROUGH RECORD ', n, ' YEAR ', iyear !
end if
go to 50
! WRITE NUMBER OF DATA RECORDS IN FIRST RECORD OF OUTPUT FILE
! ALONG WITH FIRST 12 CHARACTERS OF INPUT FILE IDENTIFIER
70 write ( unit=19, rec=1 ) n-1, iden(1:12)
! FINISH UP
write ( *, * ) n, ' TOTAL RECORDS WRITTEN'
close ( unit=18 )
close ( unit=19 )
stop
end program cio_file