Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
File io 使用fortran读取文本文件,其中开始的18行是字符串,其余的行是1000*8数组中的实数?_File Io_Fortran - Fatal编程技术网

File io 使用fortran读取文本文件,其中开始的18行是字符串,其余的行是1000*8数组中的实数?

File io 使用fortran读取文本文件,其中开始的18行是字符串,其余的行是1000*8数组中的实数?,file-io,fortran,File Io,Fortran,我有一个文本文件,其中前几行是文本,其余几行包含实数形式的数据。我只需要将实数数组存储在一个新文件中。为此,我读取文件中输出正确的所有行,然后尝试从特定行号中读取实数。我无法理解如何读取这些数据。 下面是文件的一部分。我也有很多这样的文件要读 有许多例子可以说明如何跳过/阅读这样的行 但总而言之,选项A是跳过标题和只读数据: ! Skip first 17 lines do i = 1, 17 read (unit,*,IOSTAT=stat) ! Dummy read if ( st

我有一个文本文件,其中前几行是文本,其余几行包含实数形式的数据。我只需要将实数数组存储在一个新文件中。为此,我读取文件中输出正确的所有行,然后尝试从特定行号中读取实数。我无法理解如何读取这些数据。 下面是文件的一部分。我也有很多这样的文件要读



有许多例子可以说明如何跳过/阅读这样的行

但总而言之,选项A是跳过标题和只读数据:

! Skip first 17 lines
do i = 1, 17
  read (unit,*,IOSTAT=stat) ! Dummy read
  if ( stat /= 0 ) stop "error"
end do 

! Read data
do i = 1, 1000
  read (unit,*,IOSTAT=stat) data(:,i)
  if ( stat /= 0 ) stop "error"
end do 
如果您有许多这样的文件,我建议将其包装在子例程/函数中

选项B是使用unix
tail
实用程序放弃标题(更多信息):

tail-n+18 file.txt

Welcome,所有Fortran问题请使用、阅读和使用标签。当您的问题甚至没有任何版本特定的代码时,使用某些特定的Fortran旧版本进行标记是没有意义的。您应该自己努力解决问题,并至少展示一些代码和您面临的问题。这里有很多关于数据文件读取的问题。为什么您不能跳过18行并在简单数组中读取?您是否考虑过使用unix实用程序
wc
tail
wc
将告诉您文件中的行数
tail
可用于打印文件中最后XXX行。@VladimirF我是这个平台的新手。我一定会提高我构建编码相关问题的技能。如问题中所述,我已经能够使用fortran代码读取数据行。我只是想解决为什么当我跳过第一行并显示字符时,数据没有被读取为实数。谢谢:)在这种情况下,您必须向我们展示您的代码。任何问题都需要解释为什么您的代码必须包含您的代码。看见
! Skip first 17 lines
do i = 1, 17
  read (unit,*,IOSTAT=stat) ! Dummy read
  if ( stat /= 0 ) stop "error"
end do 

! Read data
do i = 1, 1000
  read (unit,*,IOSTAT=stat) data(:,i)
  if ( stat /= 0 ) stop "error"
end do