主题:怎么用循环open一系列文件?
拜月贪狼
[专家分:20] 发布于 2012-02-20 22:14:00
如:result1.dat--->result81.dat 81个未知文件 文件编号从41---->121
open(41,file='output/result1.dat',status='unknown')
... ...
... ...
字符串定义什么的不懂啊 求指教!!
回复列表 (共6个回复)
沙发
臭石头雪球 [专家分:23030] 发布于 2012-02-20 22:25:00
请看置顶帖
Fortran讨论区 FAQ (不定期更新)
问题2
板凳
拜月贪狼 [专家分:20] 发布于 2012-02-21 11:30:00
没看懂,要求和我的不一样!
3 楼
臭石头雪球 [专家分:23030] 发布于 2012-02-21 14:21:00
没看懂仔细看。方法是一样的。
要求是一样的,不管是循环打开,还是循环生成,都是一样的。
Open( 通道号,File=文件名
其中文件名是一个字符串变量,既然是变量,当然就可以想办法让他循环的变化。
4 楼
拜月贪狼 [专家分:20] 发布于 2012-02-21 16:33:00
看懂了,下面是我写的程序可以运行。
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 楼
拜月贪狼 [专家分:20] 发布于 2012-02-22 15:32:00
问题解决了,应该先在当前目录下开一个data文件夹。然后就可以了
6 楼
拜月贪狼 [专家分:20] 发布于 2012-02-28 14:47:00
... ...!!
我来回复