作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这似乎应该是一个简单的解决方案,但搜索了几个小时后我找不到解决方案。
我想将文件路径保存为字符变量,然后在 I/O 语句中使用该变量。下面是我从“filepath”定义的文件中读取的代码。
character:: filepath
filepath='c:\users\chris\...\data.txt'
open(unit=1,file=filepath,status='old',action='read',form='formatted',iostat=ierror)
if(ierror.NE.0)then
print*,'file cannot be opened or does not exist'
read*,
endif
......
程序编译(使用 NetBeans IDE 的 gfortran 编译器),但是当我运行时,我将错误打印到屏幕上。
注1:当我将文件路径直接放入如下图的open函数中时,似乎可以正常工作
open(unit=1,file='c:\\Users\\Chris\\...\\data.txt',status='old',action='read',form='formatted',iostat=ierror)
注意 2:我已经在文件路径变量中尝试了所有向前/向后、单/双斜杠的变体,所以我认为这不是问题所在。当我将“文件路径”作为调试机制打印到屏幕上时(在上面的打开函数之前),得到的只是“C”。所以由于某种原因,我似乎丢失了文件路径的其余部分。 (在我进一步研究之前,我会留下关于哪种斜线方法合适的问题)
感谢任何建议。
谢谢,克里斯
最佳答案
您已将 filepath
声明为长度为 1 的字符变量。将声明更改为类似 character(80)::filepath
(使用足够长的长度包含整个路径)。
关于io - Fortran 90 - I/O 将变量作为文件路径传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8043661/
我是一名优秀的程序员,十分优秀!