Io Fortran 90-将变量作为文件路径传递的I/O

Io Fortran 90-将变量作为文件路径传递的I/O,io,fortran,fortran90,Io,Fortran,Fortran90,这似乎应该是一个简单的解决方案,但在搜索了几个小时后,我找不到解决方案 我想将文件路径保存为字符变量,然后在I/O语句中使用该变量。下面是我从“filepath”定义的文件中读取的代码 该程序进行编译(gfortran编译器使用NetBeans IDE),但当我运行时,会将错误打印到屏幕上 注1:当我将filepath直接放入如下所示的open函数中时,它似乎工作正常 open(unit=1,file='c:\\Users\\Chris\\...\\data.txt',status='old',

这似乎应该是一个简单的解决方案,但在搜索了几个小时后,我找不到解决方案

我想将文件路径保存为字符变量,然后在I/O语句中使用该变量。下面是我从“filepath”定义的文件中读取的代码

该程序进行编译(gfortran编译器使用NetBeans IDE),但当我运行时,会将错误打印到屏幕上

注1:当我将filepath直接放入如下所示的open函数中时,它似乎工作正常

open(unit=1,file='c:\\Users\\Chris\\...\\data.txt',status='old',action='read',form='formatted',iostat=ierror)
注2:我在filepath变量中尝试了所有向前/向后、单斜杠/双斜杠的变体,所以我认为这不是问题所在。当我将“filepath”作为一种调试机制打印到屏幕上时(在上面的open函数之前),返回的是“C”。因此,出于某种原因,我似乎正在丢失文件路径的其余部分。(在我进一步研究之前,我会留下关于什么样的斜线法合适的问题)

我感谢你的建议

谢谢,
Chris

您已将
filepath
声明为长度为1的字符变量。将声明更改为类似于
字符(80)::filepath
(使用足够长的长度来包含整个路径)。

请确认。新手Fortran错误:)感谢您的快速响应。
open(unit=1,file='c:\\Users\\Chris\\...\\data.txt',status='old',action='read',form='formatted',iostat=ierror)