【问题标题】:Reading data from variable input files in Fortran [duplicate]从 Fortran 中的变量输入文件中读取数据 [重复]
【发布时间】:2017-10-18 01:46:44
【问题描述】:

我正在尝试从输入文件(实际上是多个文件)读取数据,然后对每个文件的数据执行某些操作,并将每个输入文件的输出打印到 Fortran 中的输出,

原来是这样的。。

Open (20, file="a0001.csv)
[perform operation on this file]
print output0001.txt

input files :a0001.csv,a0002.csv,...a0100.csv

outputfiles :output1.txt, output2.txt,.... output100.txt

我想为大约 100 个文件执行此操作。

我正在考虑 1-100 的 do 循环,但我不知道如何遍历可变输入文件,然后获取每个文件的输出

【问题讨论】:

    标签: loops variables fortran fortran90 do-loops


    【解决方案1】:

    您也可以使用 readwrite 语句在数字及其字符串表示之间进行转换。所以我会做这样的事情:

    character(len=len('a0001.csv')) :: infile
    character(len=len('output100.txt')) :: outfile
    
    do i = 1, 100
        write(infile, '("a", I4.4, ".csv")') i
        write(outfile, '("output", I0, ".txt")') i
    
        open(unit=20, file=infile, status="old", action="read", ...)
        open(unit=30, file=outfile, status="new", action="write", ...)
    
        !loop over contents of infile, write to outfile
    
        close(30)
        close(20)
    end do
    

    【讨论】:

    • 感谢@chw21,它现在可以正常工作了。如何获取此代码的所有输出并打印到一个 csv 文件?
    猜你喜欢
    • 2014-06-26
    • 1970-01-01
    • 2012-02-08
    • 1970-01-01
    • 2013-06-23
    • 2016-07-23
    • 2011-01-15
    • 1970-01-01
    • 2017-02-05
    相关资源
    最近更新 更多