作者maylin7907 (林美环)
看板Fortran
标题[问题] 关於大量读写程式的问题
时间Mon Mar 4 17:46:10 2013
各位前辈您好
我有先爬过文但是无奈资质不好实在是有看没有懂..
关於大量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
这样的方法可行吗?
我看前面的文章有稍微设定过 但是怎麽设定都错....
谢谢各位前辈
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 163.13.138.85
1F:→ jubilee2:双层回圈? 03/04 19:31
2F:→ blc:重点是怎麽样把你要读/写的档名用回圈生出来。 03/05 10:24
3F:→ maylin7907:能请各位稍微指点我一下吗?关於设定出回圈的 感激不尽 03/05 11:14
4F:→ kkarthur:DO I=1,3 03/05 14:27
5F:→ kkarthur:WRITE(AA,"(A2,I1,A4)") "5.",I,".txt" 03/05 14:28
6F:推 wtula:其实你想知道的是数字变档名 请查阅 internal file内部档 03/05 14:28
7F:→ kkarthur:OPEN(UNIT=11,FILE=AA) 03/05 14:28
8F:→ kkarthur:WRITE(AA,"(A2,I1,A4)") "6.",I,".txt" 03/05 14:29
9F:→ kkarthur:OPEN(UNIT=11,FILE=AA) 03/05 14:29
10F:→ kkarthur:WRITE(AA,"(A2,I1,A4)") "7.",I,".txt" 03/05 14:29
11F:→ kkarthur:OPEN(UNIT=11,FILE=AA) 03/05 14:29
12F:→ kkarthur:END DO 03/05 14:30
13F:→ kkarthur:前面UNIT记得要换, 贴太快打错 03/05 14:30
14F:→ maylin7907:所以OPEN是UNIT=11 12 13这样吗? 03/05 15:17
15F:→ kkarthur:然後开完之後还要再CLOSE(11) 03/05 16:11
16F:→ maylin7907:每个开完都要关掉的意思吗? 03/05 16:16
17F:→ maylin7907:那就是我今天有三个TXT档 要CLOSE(11) CLOSE(12) 03/05 16:17
18F:→ maylin7907:CLOSE(13) 对吗? 03/05 16:17
19F:→ kkarthur:对.. 03/05 16:28
20F:→ maylin7907:kkarthur前辈 太感谢你了! 03/05 16:34
21F:→ maylin7907:最後再请问一个问题 AA是应该定义在哪里? 03/05 17:27
22F:→ maylin7907:我定义在INTEGER中是失败的 很谢谢你的讲解 太感谢了 03/05 17:28
23F:→ maylin7907:我设定好了 但是在跑动的时候出现程序无法储存档案 03/05 18:19
24F:→ maylin7907:请问这大概是什麽因素造成的呢? 03/05 18:19
25F:→ kkarthur:AA是字串 CHARACTER(LEN=30) 03/05 19:27
26F:→ kkarthur:档案开完之後,请"使用"完再关掉 03/05 19:29
27F:→ maylin7907:所以有可能是因为我没有关闭造成的问题 了解了 03/05 21:44
28F:→ maylin7907:我找出问题了 原来是设定格式的问题 03/06 11:17
29F:→ maylin7907:可以请问"(A2,I1,A4)"是什麽意思吗? 03/06 11:17
30F:推 terryys:这是输出/入格式,Ax是x个字元的字串,Ix是x位整数 03/06 11:34
31F:→ maylin7907:我发完文以後有去查到了 谢谢您的讲解 03/06 13:29