多数据文件批处理的一个技巧
数据处理过程中,很多时候需要对大批的数据文件进行循环处理。如果文件名是有规律的,那么正常的方法尚可处理,但是碰到文件名没什么规律,或规律不强时,表示出这些文件按名就是一件很头疼的事了。假设现有以下文件需要进行循环处理,本文将分别用MATLAB和FORTRAN给出程序例子,以供参考。

1、MATLAB
clc;clear;
%--将'e:/POP/data/'下的文件信息写入构架数组file_structure
file_structure = dir('e:/POP/data/');
%--file_structure.name下是'e:/POP/data/'内的文件名
for i=3:size(file_structure)
filename = strcat('e:/POP/data/',file_structure(i).name)
f=netcdf(filename,'nowrite');
a=['在此对f及里面的变量操作...']
close(f)
end
2、FORTRAN
program main
!==================================================
character(len=40) :: temp
character(len=57),dimension(17) :: filename
!===================================================
!--调用系统命令
!
call system('dir e:\POP\data\ > file_information.dat')
!
!=======================================================
!--从文件file_information.dat中读取文件名
!
open(1,file = 'file_information.dat',status='old')
do i = 1,7
read(1,*)
enddo
do j=1,17
read(1,'(a36,a57)') temp, filename(j)
enddo
print*,filename
!======================================================
!--操作文件
!
print*, '在此操作文件'
!=====================================================
end