将主文件等分为m个子文件(fortran代码)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

!将包含n个数据的文件等分为m个子文件PROGRAM FILES

character20 filename

!输入主文件名

print,'input data_file'

read(,)filename

!输入要拆出的文件个数

print,'input the number of sub_data_file'

read(,)m

!查看数据文件中的数据个数

call getnumber(filename,n)

!将数据文件等分

call sepfile(filename,n,m)

!合并文件

ENDPROGRAM

subroutine getnumber(filename,n)

character20 filename

character5 aa

open(1,file=filename,action='read')

n=0

do

read(1,,end=100)aa

n=n+1

enddo

100 close(1)

endsubroutine

subroutine sepfile(filename,n,m)

character20 filename,str

character80 temp

open(1,file=filename,action='read')

do i=1,m

write(str,(i3.3)) i !!将i转换为字符串str

str(47)='.dat'

open(2,file=trim(str),action='write')

do j=1,nm

read(1,)temp

write(2,)trim(temp)

enddo

close(2)

enddo

close(1)

endsubroutine

!以下为重复:

!将包含n个数据的文件等分为m个子文件PROGRAM FILES

character20 filename

!输入主文件名

print,'input data_file'

read(,)filename

!输入要拆出的文件个数

print,'input the number of sub_data_file'

read(,)m

!查看数据文件中的数据个数

call getnumber(filename,n)

!将数据文件等分

call sepfile(filename,n,m)

!合并文件

ENDPROGRAM

subroutine getnumber(filename,n)

character20 filename

character5 aa

open(1,file=filename,action='read')

n=0

do

read(1,,end=100)aa

n=n+1

enddo

100 close(1)

endsubroutine

subroutine sepfile(filename,n,m)

character20 filename,str

character80 temp

open(1,file=filename,action='read')

do i=1,m

write(str,(i3.3)) i !!将i转换为字符串str

str(47)='.dat'

open(2,file=trim(str),action='write')

do j=1,nm

read(1,)temp

write(2,)trim(temp)

enddo

close(2)

enddo

close(1)

!将包含n个数据的文件等分为m个子文件PROGRAM FILES

character20 filename

!输入主文件名

print,'input data_file'

read(,)filename

!输入要拆出的文件个数

print,'input the number of sub_data_file'

read(,)m

!查看数据文件中的数据个数

call getnumber(filename,n)

!将数据文件等分

call sepfile(filename,n,m)

!合并文件

ENDPROGRAM

subroutine getnumber(filename,n)

character20 filename

character5 aa

open(1,file=filename,action='read')

n=0

do

read(1,,end=100)aa

n=n+1

enddo

100 close(1)

endsubroutine

subroutine sepfile(filename,n,m)

character20 filename,str

character80 temp

open(1,file=filename,action='read')

do i=1,m

write(str,(i3.3)) i !!将i转换为字符串str

str(47)='.dat'

open(2,file=trim(str),action='write')

do j=1,nm

read(1,)temp

write(2,)trim(temp)

enddo

close(2)

enddo

close(1)

相关文档
最新文档