24小时热门版块排行榜    

查看: 2548  |  回复: 3

lwingkei

禁虫 (小有名气)

本帖内容被屏蔽

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   关注TA 给TA发消息 送TA红花 TA的回帖

zeppe

金虫 (小有名气)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
lwingkei: 金币+10, ★★★★★最佳答案, 很好,回头好好研究一下修改一下再用 2014-04-16 17:10:04
可以根据特征字符串所在行来定义flag进行限制,例如可以以"DM1"这个字符串所在行为起始行,以"DM2"这个字符串所在行为结束行,读入这之间的数据。其他DM3,...都类似的。
下面是读取"DM1"和"DM2"之间的数据的代码。
CODE:
! read a formatted file, see "example.txt"
      program TestReadFile
        implicit none

        character (len=80) :: filename
        integer, parameter :: fileunit=15
        logical :: bExist, bDM1, bDM2
        integer :: iOK, pos1, pos2
        character (len=80) :: line
        real :: var1, var2, var3

        ! name of input file
        filename="example.txt"

        ! check if file exist
        inquire (file=filename, exist=bExist)
        if (bExist) then
        else
          print *, filename, " not found!"
          stop
        endif

        ! open file
        open (unit=fileunit, file=filename, status='old', iostat=iOK)
        if (iOK /= 0) then
          print *, "can't open ", filename
          stop
        endif

        ! read file line by line
        do while (iOK == 0)
          read (fileunit, "(A)", iostat=iOK) line
         
          ! if line starts with "DM1"
          pos1=index(line, "DM1")
          if (pos1 == 1) then
            bDM1=.true.
            continue
          endif

          ! if line starts with "DM2"
          pos2=index(line, "DM2")
          if (pos2 == 1) then
            bDM1=.false.
            bDM2=.true.
            continue
          endif

          ! if in the 'DM1' block, read variables
          if ((bDM1) .and. (pos1 /= 1)) then
            read (line, *)var1, var2, var3
            print *, var1, var2, var3
          endif
         
        enddo

        ! close file
        close (fileunit)

      end program TestReadFile

2楼2014-04-16 13:07:31
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

zeppe

金虫 (小有名气)

【答案】应助回帖

example.txt内容如下
DM1:
             0.02     -1.3     2.40
             1.50     -0.1     4.00
             3.02     -2.0     5.00
             0.60     0.30     3000
DM2:
             0.010     3000     1000
             0.020     3000     1000
             0.030     3000     1000
             0.040     3000     1000
             0.050     3000     1000
             0.060     3000     1000
DM3:
             1000     0.00     0.00
             2000     0.00     0.00
             3000     0.00     0.00
             4000     0.00     0.00
             5000     0.00     0.00
             6000     0.00     0.00
             7000     0.00     0.00
3楼2014-04-16 13:09:34
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

tg2010

金虫 (小有名气)

【答案】应助回帖

感谢参与,应助指数 +1
先做个循环数有多少行。
第二个循环就按上面读出的行数来读。
4楼2014-04-16 15:31:41
已阅   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 lwingkei 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[教师之家] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +3 6F5UbRU2I5hL 2026-09-14 3/150 2026-09-15 00:12 by vZfe6xYu34yj
[考博] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +4 s3fFTmArrBt6 2026-09-14 5/250 2026-09-14 23:57 by vZfe6xYu34yj
[硕博家园] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +3 s3fFTmArrBt6 2026-09-14 3/150 2026-09-14 23:45 by vZfe6xYu34yj
[博后之家] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +3 s3fFTmArrBt6 2026-09-13 4/200 2026-09-14 23:24 by vZfe6xYu34yj
[教师之家] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +3 s3fFTmArrBt6 2026-09-13 3/150 2026-09-14 23:21 by vZfe6xYu34yj
[硕博家园] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +3 s3fFTmArrBt6 2026-09-13 5/250 2026-09-14 23:13 by vZfe6xYu34yj
[硕博家园] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +3 s3fFTmArrBt6 2026-09-13 5/250 2026-09-14 22:45 by vZfe6xYu34yj
[公派出国] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +3 LwdutQ8HoqWP 2026-09-13 6/300 2026-09-14 22:37 by vZfe6xYu34yj
[考研] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +3 LwdutQ8HoqWP 2026-09-13 3/150 2026-09-14 22:33 by vZfe6xYu34yj
[找工作] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +5 3n8v2C8RimXI 2026-09-13 5/250 2026-09-14 22:13 by vZfe6xYu34yj
[考研] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +4 3n8v2C8RimXI 2026-09-13 5/250 2026-09-14 22:00 by vZfe6xYu34yj
[博后之家] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +4 QUjhNVAcOSff 2026-09-13 4/200 2026-09-14 21:37 by vZfe6xYu34yj
[考博] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +5 QUjhNVAcOSff 2026-09-13 5/250 2026-09-14 21:36 by vZfe6xYu34yj
[博后之家] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +4 QUjhNVAcOSff 2026-09-13 5/250 2026-09-14 21:24 by vZfe6xYu34yj
[考研] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +3 s3fFTmArrBt6 2026-09-14 3/150 2026-09-14 18:01 by Aj1rhIDL5ixY
[找工作] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +3 s3fFTmArrBt6 2026-09-14 4/200 2026-09-14 17:48 by Aj1rhIDL5ixY
[考博] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +4 3n8v2C8RimXI 2026-09-13 4/200 2026-09-14 15:37 by Aj1rhIDL5ixY
[考研] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +3 QUjhNVAcOSff 2026-09-13 3/150 2026-09-14 14:57 by Aj1rhIDL5ixY
[考博] 西北工业大学材料学院电化学传感与催化课题组招收2027年推免研究生、博士生、博士后 +3 马方园 2026-09-10 4/200 2026-09-14 09:29 by Chem张zz
[基金申请] 面上有专家说实验设备不是我们单位的 +6 zj_muchong 2026-09-08 8/400 2026-09-11 06:56 by suifengdao
信息提示
请填处理意见