Fortran Coder

查看: 49|回复: 2

[文件读写] 从文件指定行读取数据的方法

[复制链接]

19

帖子

5

主题

0

精华

入门

F 币
92 元
贡献
55 点
发表于 2021-9-14 10:43:48 | 显示全部楼层 |阅读模式
文件开头有说明性的字头,想从指定行读入数据有什么好的方法呢?
例如,要读入图中红框数据存到程序的整型数,读入蓝框数据到数组。
我的做法是直接顺序读取,再用循环跳过想跳过的行:
subroutine read_num
    integer i
    open(12, File = './file/faces')

    do i=1,9
        read(12, *)
    end do
   read(12, *) nface

end subroutine


请问有更好的实现方法嘛?

faces - 副本.txt

378 Bytes, 下载次数: 3

回复

使用道具 举报

77

帖子

0

主题

0

精华

专家

F 币
544 元
贡献
234 点

规矩勋章元老勋章新人勋章

发表于 2021-9-14 10:56:36 | 显示全部楼层
[Fortran] 纯文本查看 复制代码
Subroutine read_num
  integer i
  character(len=256) :: cStr
  open(12, File = './file/faces')
  do
    read(12,"(a256)") cStr
    if(cStr(1:1)=="}")exit
  end do
  read(12, *) nface
  close(12)
End Subroutine read_num
天之道,损有余而补不足

19

帖子

5

主题

0

精华

入门

F 币
92 元
贡献
55 点
 楼主| 发表于 2021-9-14 11:51:36 | 显示全部楼层
胡文刚 发表于 2021-9-14 10:56
[mw_shl_code=fortran,true]Subroutine read_num
  integer i
  character(len=256) :: cStr

学到了学到了,多谢您啦
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

QQ|捐赠本站|Archiver|关于我们 About Us|群聊|Fcode

GMT+8, 2021-9-24 08:54

Powered by Discuz! X3.2

© 2001-2017 Comsenz Inc.

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