【问题标题】:How do I read formatted data with comments in Fortran?如何在 Fortran 中读取带有注释的格式化数据?
【发布时间】:2013-06-01 13:06:57
【问题描述】:

我需要用 Fortran 读取的文件中有一些时域数据,看起来像这样重复:

0.0000E+000
       2  %  number of particles
       4  %  number of values
0.00000E+000
0.00000E+000
0.00000E+000
0.00000E+000
       4  %  number of values 
0.00000E+000
0.00000E+000
0.00000E+000
0.00000E+000

第一行是当前时间,我需要数组中的其他值,该数组的大小由粒子数和值决定。理想情况下,每次调用read_values() 子例程都会获取该数据的一大块(在下一次),但我不确定如何跳过 cmets。有没有一种简单的方法可以在阅读后简单地前进到下一行?

【问题讨论】:

    标签: format fortran


    【解决方案1】:

    Fortran I/O 通常是基于记录的(新的stream 访问方法不是)。对于格式化文件,这意味着行。 Fortran read 通常从一行读取,下一次读取将读取下一行……除非您明确使用非高级选项。如果您知道哪些行有整数,请使用仅使用该行的那一部分的格式读取整数。您的文件似乎是I8。读取不会处理带有注释的其余行。下一次读取将从下一行读取。如果你不知道哪些行包含哪些类型的数据,那么你可以将每一行读入一个字符串并分析该字符串来决定如何从字符串中读取。

    【讨论】:

      猜你喜欢
      • 2014-06-12
      • 2013-02-14
      • 1970-01-01
      • 2012-05-21
      • 2017-08-09
      • 2011-04-03
      • 1970-01-01
      • 2012-09-03
      • 2015-12-26
      相关资源
      最近更新 更多