从Fortran中的Excel文件中提取数据

时间:2016-10-22 13:32:41

标签: excel fortran

我有一张包含8000个数据点的Excel表格(A栏)。从0到8000的每一行在B,C等列中都有不同的对应值。

我需要编写一个应该感知输入的Fortran代码,将它与A列进行比较,并且应该从同一行的B列中提供输出。

我已将Excel文件导出为PRN格式,只是为了得到一个想法,我正在测试以下代码示例并得到错误:

Error 52, invalid character in field at line 10_

(参见附图,Error Message)。有关哪个角色无效的建议?我正在写Plato IDE

!FTN95 application...

program FreeFormat

real*4, dimension(5) :: Open, High, Low, Close, DayAverage
real*4 :: average

open(unit=1, file='C:\Users\MUHAMMADARSLAN\Desktop\Fortran Test\Table.prn',   status='old')
do i=1,5
read(1,*)Open(i), High(i), Low(i), Close(i), DayAverage(i)
enddo
average = sum(DayAverage)/5
write(*,'("Average is",f5.2)')average

end program FreeFormat

Table.prn文件中的文字:

打开70
高50
低10
关闭5
DayAverage 100
所有值均由变量名称Tab分隔。

1 个答案:

答案 0 :(得分:0)

您的文件与阅读方式完全不符。

命令

do i=1,5
  read(1,*)Open(i), High(i), Low(i), Close(i), DayAverage(i)
enddo

每行需要5行和5个数字。那里应该没有文字字符串。数字可以在更多行上,但绝对应该有25个数字,中间没有文字。

取决于您必须更改代码或输入文件的主要内容。