Fortran如何创建多个顺序文件

2025-06-30 18:35:43

1、首先申明变量:program mainimplicit nonecharacter(len=100):: fileDir,file绿覆冗猩Name,fileSeq,fileSuffix,myStrinteger*4:: fileNumer=28,i,j,counterLen = 3integer::reslogical::FEXIST其中各个变量分别是fileDir:文件目录fileName:文件名fileSeq:文件序号fileSuffix:文件后缀myStr:数字输出格式fileNumer:文件数量counterLen:文件序号的长度,比如0001.txt长度就是4(3个0和1个1)FEXIST:判断路径是否存在,如果不存在就创建

2、然后定义文件路径并查询是否存在,不存在就创建fileDir = '.\03014\'inquire(file = trim(fileDir),EXIST=FEXIST)if(.not.FEXIST) then call system('md '//trim(fileDir)) write(*,*) 'New folder created'endif

3、定义文件名、后缀和文件序号书写格式fileName = 'myFileName'fileSuffix = '.dat'write(myStr,'(I2)')counterLenmyStr = '(I'//trim(adjustl(myStr))//')'

4、循环创建文件do i = 1,fileNumer,1 write(fileSeq,myStr)i do j = 1,counterLen - len(trim(adjustl(fileSeq))) fileSeq = '0'//adjustl(trim(fileSeq)) enddo open(111,file = adjustl(trim(fileDir))//adjustl(trim(fileName))& &//adjustl(trim(fileSeq))//adjustl(trim(fileSuffix))) close(111)enddo

5、最后可以观察效果,创建了12个文件,总的程序:program mainimplicit nonecharacter(len租涫疼迟=100):: fileDir,fileName,fileSeq,fileSuffix,myStrinteger*4:: fileNumer=12,i,j,counterLen = 3!integer::reslogical::FEXISTfileDir = '.\03014\'inquire(file = trim(fileDir),EXIST=FEXIST)if(.not.FEXIST) then call system('md '//trim(fileDir)) write(*,*) 'New folder created'endiffileName = 'myFileName'fileSuffix = '.dat'write(myStr,'(I2)')counterLenmyStr = '(I'//trim(adjustl(myStr))//')'do i = 1,fileNumer,1 write(fileSeq,myStr)i do j = 1,counterLen - len(trim(adjustl(fileSeq))) fileSeq = '0'//adjustl(trim(fileSeq)) enddo open(111,file = adjustl(trim(fileDir))//adjustl(trim(fileName))& &//adjustl(trim(fileSeq))//adjustl(trim(fileSuffix))) close(111)enddoread(*,*)end

Fortran如何创建多个顺序文件
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢