Fortran Coder

标题: 关于数据读取 [打印本页]

作者: 新手求指点    时间: 2014-4-6 11:53
标题: 关于数据读取
我现在有很多数据是这样类型的,我想只读取时间并保存下来该怎么写程序呢,是该用
read(i6,*)吗?
nstep:                             0
time:
      0.0000000 s
nstep:                             1time:      0.0040827 snstep:                             2time:      0.0057681 s


作者: 魔啸天龙    时间: 2014-4-6 12:13
你重新编辑一下吧,看不清你的文件格式
作者: 新手求指点    时间: 2014-4-8 05:35
魔啸天龙 发表于 2014-4-6 12:13
你重新编辑一下吧,看不清你的文件格式

格式是第一排step,第三排从第七个字符开始是要读入的时间,有很多step.
nstep:                             0
time:
      0.0000000 s
nstep:                             1
time:
      0.0040827 s
nstep:                             2
time:
      0.0057681 s
作者: fcode    时间: 2014-4-8 07:50
[Fortran] 纯文本查看 复制代码
Open( 12 , File = 文件名 )
Do i = 1 , 时间数目
  Read( 12 , * )  !// 跳过 nstep:0
  Read( 12 , * )  !// 跳过 time:
  Read( 12 , * ) 时间
End Do

作者: 新手求指点    时间: 2014-4-8 09:35
fcode 发表于 2014-4-8 07:50
[mw_shl_code=fortran,true]Open( 12 , File = 文件名 )
Do i = 1 , 时间数目
  Read( 12 , * )  !// 跳过  ...

我想问一下那个12是随意写的吗,要读的时间数据是从第七位就开始需要读入了,前六位是空格
作者: fcode    时间: 2014-4-8 09:44
12是文件通道号,建议用10以上的数字(任意),但是open,read,close要匹配。

这是基础常识,建议看一本教科书。

前6位是空格,这个不必管。用 read(12,*) 的 * 是没有问题的
作者: 新手求指点    时间: 2014-4-8 10:16
fcode 发表于 2014-4-8 09:44
12是文件通道号,建议用10以上的数字(任意),但是open,read,close要匹配。

这是基础常识,建议看一本 ...

如果前面6位不是空格但是是不需要的字符,该用什么格式呢?
作者: fcode    时间: 2014-4-8 10:26
新手求指点 发表于 2014-4-8 10:16
如果前面6位不是空格但是是不需要的字符,该用什么格式呢?

read 会自动跳过它。

在 99% 的情况下,read 都用 * 既可



作者: 新手求指点    时间: 2014-4-8 11:02
fcode 发表于 2014-4-8 10:26
read 会自动跳过它。

在 99% 的情况下,read 都用 * 既可

谢谢指点!!!




欢迎光临 Fortran Coder (http://bbs.fcode.cn/) Powered by Discuz! X3.2