在Fortran 77中重命名文件

4
有没有一种方法可以在Fortran 77中重命名文件?例如:
RENAME(old name, new name)

或者类似这样:
call system("rename" // trim(old name) // " " // trim(new name)) 

谢谢

2个回答

2
您可以使用modFileSys库来实现。与非标准编译器扩展相比,它可以在任何Fortran 2003编译器上编译,并可在所有POSIX兼容的系统上使用。如果需要,您还可以检查错误:
program test
  use libmodfilesys_module
  implicit none

  integer :: error

  ! Renaming with error handling
  call rename("old.dat", "new.dat", error=error)
  if (error /= 0) then
    print *, "Error happened"
  end if

  ! Renaming without explicit error handling, stops the program
  ! if error happens.
  call rename("old2.dat", "new2.dat")

end program test

2

我认为你的第一个想法很棒:

CALL RENAME('oldname','newname')

更多内容在此处。并且在这里


1
一个可能更相关的链接是gcc doc页面上的RENAME,而不是Rosetta代码。 - Kyle Kanos
将文档页面链接添加到答案中。 - John
1
请注意,RENAME不是标准的Fortran内置例程。尽管如此,在许多实现中,它作为扩展通常是可用的。 - Steve Lionel

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接