运算符检查文件是否存在

时间:2015-05-06 19:05:57

标签: fortran operator-keyword

我想创建一个运算符.f。检查文件是否存在以便我可以写

if (.f. filename) Then ...

我已经编写了一个函数来执行此操作,现在必须创建该接口。具有上述功能的e函数参数的约束是什么?

1 个答案:

答案 0 :(得分:9)

您可以使用inquire内在:

module fileIO

interface operator( .f. )
  module procedure file_exists
end interface

contains

function file_exists(filename) result(res)
  implicit none
  character(len=*),intent(in) :: filename
  logical                     :: res

  ! Check if the file exists
  inquire( file=trim(filename), exist=res )
end function

end module

program test
  use fileIO

  print *, file_exists('/dev/null')
  print *, .f. '/dev/null'

end program