Fortran Coder

查看: 8986|回复: 1
打印 上一主题 下一主题

[文件读写] 求数据处理代码,谢谢!

[复制链接]

1967

帖子

12

主题

5

精华

论坛跑堂

臭石头雪球

F 币
1370 元
贡献
581 点

美女勋章热心勋章星光勋章新人勋章贡献勋章管理勋章帅哥勋章爱心勋章规矩勋章元老勋章水王勋章

楼主
发表于 2021-3-9 16:51:02 | 显示全部楼层
[Fortran] 纯文本查看 复制代码
Program Fcode
  Implicit None
  Character(len=512) :: cStr
  integer :: k
  Open(12,File="Shielding Material Handbook.dat")
  Open(21,File="文档1")
  Open(22,File="文档2")
  Open(23,File="文档3")
  Do
    Read(12,"(a512)",ioStat=k) cStr
    if(k/=0) exit
    If( cStr(1:7) == "Density" ) then
      k = index(cStr,"=")
      if(k>3) write(21,*) trim(adjustl(cStr(k+1:)))
    ElseIf( cStr(1:8) == "Neutrons" ) then
      call PutRows(12,22)
    ElseIf( cStr(1:7) == "Photons" ) then
      call PutRows(12,23)
    End If
  End Do
  Close(12)
  Close(21)
  Close(22)
  Close(23)
contains

  Subroutine PutRows(fuIn,fuOut)
    integer :: fuIn , fuOut , j , k
    real :: r
    Do
      read(fuIn,*,ioStat=k) j , r
      if(k/=0) then
        backspace(fuIn)
        return
      end if
      write(fuOut,*) j , r
    End Do
  End Subroutine PutRows
  
End Program Fcode
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

捐赠本站|Archiver|关于我们 About Us|小黑屋|Fcode ( 京ICP备18005632-2号 )

GMT+8, 2024-5-16 23:42

Powered by Tencent X3.4

© 2013-2024 Tencent

快速回复 返回顶部 返回列表