数据分类问题求助
我有525个以站点命名的文件,每一个文件里是该站点从1961-2013年的数据,像下面的格式,第5列是年份:50353 5143 12639 1774 1961 -20
50353 5143 12639 1774 1962 -14
50353 5143 12639 1774 1963 -7
50353 5143 12639 1774 1964 -24
我想把525个文件中同一年的数据写出来保存在以年份命名的文件里,比如1961年的525个站点的数据写在一个文件里,一直到2013年。
我把站点号和年份分别写在txt中,用来批量读取和写数据
program main
implicit none
character*5 filename
character*4 filename1
open(10, file = "D:\a\year.txt")
do i = 1, 53
read(10, *) filename1
open(11, file = "D:\c\"//filename1//".txt")
这一部分是准备写入数据的53个年份的文件。
open(12, file = "D:\a\tem.txt")
do j = 1 , 525
read(12, *) filename
open(13, file = "D:\a\"//filename//".txt")
do k = 1, 53
这一部分是批量打开525个文件,k是文件里数据的行数53行。
如何把同一年份的数据写在一个文件里呢,请高手指点。
program main
implicit none
character*5 filename
character*4 filename1
integer :: i,k,j,q
integer :: a(6)
do q = 1961, 2013
open(10, file = "D:\a\year.txt")
do i = 1, 53
read(10, *) filename1
open(11, file = "D:\c\"//filename1//".txt")
open(12, file = "D:\a\tem.txt")
do j = 1, 525
read(12, *) filename
open(13, file = "D:\a\"//filename//".txt")
do k = 1, 53
read (13, *) a(1:6)
if (a(5) == q) then
write(11,*) a(1:6)
exit
end if
end do
end do
close(13)
close(12)
end do
close(11)
close(10)
end do
end
我这样写代码,然后就是不停的写,然后被替换,到最后只留下2013年的数据,这的哪里需要改一下呢? Program Www_fcode_cn
Implicit None
Character *5 Filename
Character *4 Filename1
Integer :: I, J
Integer :: A(6)
Open (10, File='D:\a\year.txt')
Do J = 1961, 2013
Read (10, *) Filename1
Open (J, File='D:\c\'//Filename1//'.txt') !// 11 改为 j
End Do
Open (12, File='D:\a\tem.txt')
Do I = 1, 525
Read (12, *) Filename
Open (13, File='D:\a\'//Filename//'.txt')
Do J = 1961, 2013
Read (13, *) A(:)
Write (A(5), *) A(:)
End Do
Close (13)
End Do
Close (12)
Do J = 1961, 2013
Close (J)
End Do
Close (10)
End Program Www_fcode_cn
页:
[1]