打开输出文件我有一段Fortran代码:使用变量FORTRAN
C --------------------------------------------
CALL READIN_HYD
CALL READIN_CONFIG
CALL READIN_FORCE
CALL READIN_STEPPER
C --------------------------------------------
OPEN(11,FILE='EVO_0wall.dat')
,我试图用我的东西能够输入我的输入来代替硬编码的文件名(EVO_0wall.dat)参数(全部由子程序readin_hyd等读取)。
我试图做这样的事情:
CHARACTER*30 OUTFILE
WRITE(*,*) 'OUTPUT FILE'
READ(*,*) OUTFILE
WRITE(*,*) 'OUTPUT FILE: ',OUTFILE
我已经加入到READIN_CONFIG子程序。回来了,我
OPEN(11,FILE=OUTFILE,STATUS='NEW')
替换主程序,希望它会像以前一样说同样的事情,如果在输入文件我管包含“EVO_0wall.dat”(用单引号)在适当的地点。
如果我运行代码,所有其他输入变量被正确读取,并且数据输出正确 - 但是,它创建并将输出放置在一个奇数文件中,没有扩展名和字符名称(例如,程度,\“{a}和0)。使用.dat扩展名重命名文件可让我打开它,并且内部的数据是正确的(编辑:实际上,变量OUTFILE变为奇数字符函数,如果我试图简单地打印它的值,所以我猜它不只是OPEN语句中的错误语法)
有没有某种方法可以让FORTRAN处理字符串,我是FORTRAN的新手(这是别人的代码,我正在适应),我不太清楚我错过了什么,任何帮助都会很多不胜感激!
谢谢!
您如何获得将read_hyd中的outfile设置回主例程中的outfile版本的值?对不起,要问的基本知识,但你知道,没有使用像参数列表或模块的东西,他们是不同的变量?我的猜测,我强调这是一个猜测,主程序中的outfile是未初始化的 – 2012-04-04 09:14:28