如何编写格式语句以从文件中读取实数并将其存储在数组中?

时间:2019-07-05 19:56:31

标签: fortran format precision

我正在编写一个程序,以从文本文件中读取实数(十进制后最多16位)并将其存储在数组中。 这是一个简单的程序,显示我想做什么:

program readexcel
    dimension array(10,10)   
    Open(unit=10,file='aa.txt',status='old')
    read (10,*) ((array(i,j),j=1,10),i=1,10)
    pause
end program

aa.txt文件(10x10):

1.12312374123123,2.12312312345,3,4,5,6,7,8,9,10
2,2.1,3.1,4.1,5.1,6.1,7.1,8.1,9.1,10.1
3,2.2,3.2,2,5.2,6.2,7.2,8.2,9.2,10.2
4,2.3,3.3,4.3,5.3,6.3,7.3,8.3,9.3,10.3
5,2.4,3.4,4.4,5.4,6.4,7.4,8.4,9.4,10.4
6,2.5,3.5,4.5,5.5,6.5,7.5,8.5,9.5,10.5
7,2.6,3.6,4.6123456789101112,5.6,6.6,7.6,8.6,9.6,10.6
8,2.7,3.7,4.7,5.7,6.7,7.7,8.7,9.7,10.7
9,2.8,3.8,4.8,5.8,6.8,2,8.8,9.8,10.8
10,2.9,3.9,4.9,5.9,6.9,7.9,8.9,9.9,10.9

此代码有效,但是使用星号*(默认值)只能读取小数点后的四位数字,因为该数组是实数类型。 我尝试使用双精度数组,但是这种解决方案不切实际,因为在实际程序中,我有很多数组,以及使用这些数组的子例程很多。 我需要帮助的是写一条格式语句,在其中可以定义变量的宽度以及位数。

0 个答案:

没有答案