在Linux环境下使用Fortran进行文件操作,主要涉及以下几个步骤:
使用OPEN语句来打开一个文件。你需要指定文件名、访问模式(如读、写、追加等)以及文件状态。
program file_operations
implicit none
integer :: unit_number, iostat
character(len=*) :: filename
filename = 'example.txt'
unit_number = 10 ! 选择一个未使用的单元号
! 打开文件进行读写
open(unit=unit_number, file=filename, status='old', action='readwrite', iostat=iostat)
if (iostat /= 0) then
print *, 'Error opening file:', iostat
stop
end if
end program file_operations
使用READ语句从文件中读取数据。
integer :: num_values
real, dimension(10) :: data
! 读取一行数据
read(unit_number, *, iostat=iostat) num_values, data
if (iostat /= 0) then
print *, 'Error reading file:', iostat
stop
end if
print *, 'Number of values:', num_values
print *, 'Data:', data
使用WRITE语句向文件中写入数据。
! 写入数据到文件
write(unit_number, *) 'Writing to file...'
do i = 1, num_values
write(unit_number, '(F8.2)') data(i)
end do
使用CLOSE语句关闭文件。
close(unit_number)
print *, 'File closed successfully.'
end program file_operations
以下是一个完整的Fortran程序,演示了如何打开、读取、写入和关闭文件:
program file_operations
implicit none
integer :: unit_number, iostat, num_values
character(len=*) :: filename
real, dimension(10) :: data
filename = 'example.txt'
unit_number = 10
! 打开文件进行读写
open(unit=unit_number, file=filename, status='old', action='readwrite', iostat=iostat)
if (iostat /= 0) then
print *, 'Error opening file:', iostat
stop
end if
! 读取一行数据
read(unit_number, *, iostat=iostat) num_values, data
if (iostat /= 0) then
print *, 'Error reading file:', iostat
stop
end if
print *, 'Number of values:', num_values
print *, 'Data:', data
! 写入数据到文件
write(unit_number, *) 'Writing to file...'
do i = 1, num_values
write(unit_number, '(F8.2)') data(i)
end do
! 关闭文件
close(unit_number)
print *, 'File closed successfully.'
end program file_operations
iostat参数来检查文件操作的错误状态。通过以上步骤,你可以在Linux环境下使用Fortran进行基本的文件操作。