爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 4419|回复: 1

[经验总结] Fortran确定文本中数据的行数

[复制链接]

新浪微博达人勋

发表于 2017-9-15 08:55:51 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x
关于确定数据行数,大家也发了几个程序,本人也编写了一个程序仅供大家参考,同时还有一个问题需要和大家讨论一下。
程序如下:

!如何确定一个文本文件中有多少行
program determine_number_of_line
integer::num_line=0               !该变量用于确定行数
integer::stat                     
character(len=40)::string_tem     !把每一行数据看做一个字符串一次性读入
  
open(10,file="57067.txt",STATUS='OLD')
do while(.true.)  
  read(10,*,iostat=stat) fall_information
    if (stat/=0) exit
    num_line=num_line+1
  end do
print*,num_line
stop
end
!注意的一个问题:当我们确定文本的行数后,如果需要继续操作该文本,必须要rewind(10)
!因为在进行完上述操作后,读写的位置已经放到文本最后了,利用rewind
!命令可以使读写位置回到开头,方可重新开始读写文本,否则出错。

这个程序中有一个关于iostat的问题请高人指点一下:如果把程序中read命令中参数iostat去掉后,编译正确,但是运行时在读取文件时却结束了,就是
大家很熟悉的,请问这是怎么回事呢?我看一些程序的read命令中也没有iostat这个参数,在这个程序中为什么必须要有这个参数呢?哪些情况下这个参数可以没有呢?大家讨论一下哈。









来自群组: 成于大气 信达天下
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-9-21 07:08:45 | 显示全部楼层
好文,正好用上,谢谢楼主
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

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