首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Fortran 90中复制文件?

如何在Fortran 90中复制文件?
EN

Stack Overflow用户
提问于 2011-03-02 22:58:43
回答 6查看 11.3K关注 0票数 3

如何以可移植的跨平台方式复制fortran 90中的文件?

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2011-03-02 23:00:50

SYSTEM与操作系统的复制命令一起使用。实际上,所有的编译器都支持这个特性。

票数 1
EN

Stack Overflow用户

发布于 2011-03-04 05:59:09

在Fortran 2003中,您可以通过流来读/写文件,但在Fortran 90/95中,我认为这将适用于复制任意文件(虽然效率非常低!)

代码语言:javascript
复制
OPEN(UNIT=ISRC, FILE='', ACCESS='DIRECT', STATUS='OLD', ACTION='READ', IOSTAT=IERR, RECL=1)
OPEN(UNIT=IDST, FILE='', ACCESS='DIRECT', STATUS='REPLACE', ACTION='WRITE', IOSTATE=IERR, RE)
IREC = 1
DO
  READ(UNIT=ISRC, REC=IREC, IOSTAT=IERR) CHAR
  IF (IERR.NE.0) EXIT
  WRITE(UNIT=IDST, REC=I) CHAR
  IREC = IREC + 1
END DO

当然,如果它是fortran生成的文件,您可以使用该信息使其更高效。

在个人笔记中:如果您需要从fortran内部调用系统调用,您在做什么?使用其他更适合这项任务的语言不是更好吗?

票数 1
EN

Stack Overflow用户

发布于 2011-06-14 13:11:12

是的,Fortran的I/O很糟糕,如果可能的话,不应该用来做这种事情。我们中的一些人被迫这么做,这真是太可惜了。

我只是读取源文件,同时逐行写入目标文件。到目前为止,这对我来说是有效的,但效率非常低。

使用Fortran处理文件和可移植性很烦人,而且系统调用通常也不是很好。windows操作系统没有正确遵循linux链接文件,Windows/Linux/MacOS有不同的分隔符,我被系统调用中固有的堆栈限制所困扰,等等。

祝你好运!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5169295

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档