[问题] 关于大量读写程式的问题

楼主: maylin7907 (林美环)   2013-03-04 17:46:10
各位前辈您好
我有先爬过文但是无奈资质不好实在是有看没有懂..
关于大量OPEN档和READ档以及WRITE的部分
我明白这里所有的档都能够一个一个开启
但是资料过于大量 将近一万笔左右
能否有更有效率的方式去撰写FORTRAN程式
其中能否假设一个DO循环
使得文件档READ完,WRITE出来后
再让他自动READ类似档名再依序WRITE?
例如我有5.1.txt,5.2.txt,5.3.txt
6.1.txt,6.2.txt,6.3.txt 这六个档案
能不能设定一个循环
READ 5.1.txt和6.1.txt后
输出到7.1.txt
然后再依序READ 5.2.txt和6.2.txt
输出到7.2.txt
这样的方法可行吗?
我看前面的文章有稍微设定过 但是怎么设定都错....
谢谢各位前辈
作者: jubilee2 (3321)   2013-03-04 19:31:00
双层循环?
作者: blc (Anemos)   2013-03-05 10:24:00
重点是怎么样把你要读/写的档名用循环生出来。
楼主: maylin7907 (林美环)   2013-03-05 11:14:00
能请各位稍微指点我一下吗?关于设定出循环的 感激不尽
作者: kkarthur (aa)   2013-03-05 14:27:00
DO I=1,3WRITE(AA,"(A2,I1,A4)") "5.",I,".txt"
作者: wtula (三平三平)   2013-03-05 14:28:00
其实你想知道的是数字变档名 请查阅 internal file内部档
作者: kkarthur (aa)   2013-03-05 14:28:00
OPEN(UNIT=11,FILE=AA)WRITE(AA,"(A2,I1,A4)") "6.",I,".txt"OPEN(UNIT=11,FILE=AA)WRITE(AA,"(A2,I1,A4)") "7.",I,".txt"OPEN(UNIT=11,FILE=AA)END DO前面UNIT记得要换, 贴太快打错
楼主: maylin7907 (林美环)   2013-03-05 15:17:00
所以OPEN是UNIT=11 12 13这样吗?
作者: kkarthur (aa)   2013-03-05 16:11:00
然后开完之后还要再CLOSE(11)
楼主: maylin7907 (林美环)   2013-03-05 16:16:00
每个开完都要关掉的意思吗?那就是我今天有三个TXT档 要CLOSE(11) CLOSE(12)CLOSE(13) 对吗?
作者: kkarthur (aa)   2013-03-05 16:28:00
对..
楼主: maylin7907 (林美环)   2013-03-05 16:34:00
kkarthur前辈 太感谢你了!最后再请问一个问题 AA是应该定义在哪里?我定义在INTEGER中是失败的 很谢谢你的讲解 太感谢了我设定好了 但是在跑动的时候出现程序无法储存盘案请问这大概是什么因素造成的呢?
作者: kkarthur (aa)   2013-03-05 19:27:00
AA是字串 CHARACTER(LEN=30)档案开完之后,请"使用"完再关掉
楼主: maylin7907 (林美环)   2013-03-05 21:44:00
所以有可能是因为我没有关闭造成的问题 了解了我找出问题了 原来是设定格式的问题可以请问"(A2,I1,A4)"是什么意思吗?
作者: terryys (terry)   2013-03-06 11:34:00
这是输出/入格式,Ax是x个字符的字串,Ix是x位整数
楼主: maylin7907 (林美环)   2013-03-06 13:29:00
我发完文以后有去查到了 谢谢您的讲解

Links booklink

Contact Us: admin [ a t ] ucptt.com