按照上面的代码复制了,但是因为原文件有些数据是空缺的,生成的文件空缺的地方自动补充了,请问您有什么解决办法嘛~[Fortran] 纯文本查看 复制代码 program test
implicit none
integer,parameter::nCol = 949
integer i, j
character(10000) str(nCol)
character(*),parameter:: strHead(9)=['date','hour','type','1142A','1143A','1144A','1145A', '1146A','1147A']
logical L(nCol)
open(10,file='E:\shuju\zhandian\20140513-20141231\china_sites_20141201.csv')
open(11,file='E:\shuju\china_sites_20141201.csv')
!读取表头
read(10,*) str
!判断需要读取的列
L = .false.
do i = 1,nCol
str(i) = adjustl( str(i) )
if( any(trim(str(i))==strHead) ) then
L(i) = .true.
write(11,"(a,',')",advance='no') trim( str(i) ) !输出新表头
end if
end do
write(11,*)
do
read(10,*,iostat=j) str
if(j/=0) exit
do i =1, nCol
if(.NOT.L(i)) cycle
write(11,'(a,",")',advance='no') trim( str(i) )
end do
write(11,*)
end do
end program test
|