回 帖 发 新 帖 刷新版面

主题:怎么用循环open一系列文件?

如:result1.dat--->result81.dat  81个未知文件    文件编号从41---->121

open(41,file='output/result1.dat',status='unknown')
... ...

... ...

字符串定义什么的不懂啊  求指教!!

回复列表 (共6个回复)

沙发

请看置顶帖 

Fortran讨论区 FAQ (不定期更新)

问题2

板凳


没看懂,要求和我的不一样!

3 楼

没看懂仔细看。方法是一样的。

要求是一样的,不管是循环打开,还是循环生成,都是一样的。

Open( 通道号,File=文件名

其中文件名是一个字符串变量,既然是变量,当然就可以想办法让他循环的变化。

4 楼


看懂了,下面是我写的程序可以运行。
PROGRAM MAIN
      
    character(LEN=80)  SSST,FROM
    do 20  i=1,81
    
    WRITE(FROM,'(I2)')I
    
    WRITE(SSST,*)'RESULT',TRIM(FROM),'.DAT'
    
    
    OPEN(40+I,FILE=SSST,STATUS='UNKNOWN')
    WRITE(40+I,*)I

    CLOSE(40+I)
    
20    continue        


    end
------------------------------------------------------
这里我想把这打开的81个的文件,放到一个文件夹里
例如放到data文件夹里
以前用过
OPEN(40+I,FILE=‘data/result1.data’,STATUS='UNKNOWN')
就可以把result1.dat放到当前目录的data文件夹里。

这里我试着改动
WRITE(SSST,*)'data/RESULT',TRIM(FROM),'.DAT'

这样不行啊?这个怎么弄啊?

5 楼


问题解决了,应该先在当前目录下开一个data文件夹。然后就可以了

6 楼


...  ...!!

我来回复

您尚未登录,请登录后再回复。点此登录或注册