24小时热门版块排行榜    

北京石油化工学院2026年研究生招生接收调剂公告
查看: 1060  |  回复: 7
当前主题已经存档。

gongxd325

至尊木虫 (文坛精英)

[交流] 【求助】Fortran读字符串出错【已完成】

Fortran语句读一个文档中的字符时遇到的奇怪问题

      CHARACTER  TT*80
      READ(1,'(A80)')  TT

当字符TT以"F"开头时就出错,其他字符没有问题,不知道为何?如何解决?

[ Last edited by nono2009 on 2009-10-6 at 09:13 ]
回复此楼

» 猜你喜欢

一个人做点好事并不难难的是一辈子做好事!!!
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

journalemu

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
余泽成(金币+1,VIP+0):支持应助,欢迎常来程序软件版! 10-5 20:57
这么神奇?呵呵,我测试了一下,没有问题。呵呵。不知道楼主是否可以细贴出来。
2楼2009-10-05 19:19:59
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

vaidi

银虫 (初入文坛)

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
余泽成(金币+1,VIP+0):支持应助,欢迎常来程序软件版! 10-5 22:36
我这也没有问题,楼主真的要把更详细的内容那出来才可以判断啊
3楼2009-10-05 21:54:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

gongxd325

至尊木虫 (文坛精英)

谢谢楼上两位。
是这样的,有一组类似于下面形式的数据,每一行上有2个数字或者1个字符串
1.0  3.0
F2.out
HF.out
H2.out
编了个小程序读取,首先以数据形式读A,B,假如出错,则回退一行重新以字符形式读取,语句如下:

      READ(1,*,err=1)A,B
      goto 2
1     backspace (1)
      READ(1,'(A)')TT
      OPEN(3,FILE=TRIM(ADJUSTL(TT)),STATUS='UNKNOWN')
      ...
2     ...

结果发现,读“F”打头的行时出错,而其他均没问题。
研究了一下,问题应该是由于以数据形式读“F”打头的字符出错时无法转向到行号1引起的,不知道该如何解决
一个人做点好事并不难难的是一辈子做好事!!!
4楼2009-10-05 22:54:22
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

gongxd325

至尊木虫 (文坛精英)

PROGRAM test

      IMPLICIT REAL*8 (A-H,O-Z)
      CHARACTER TT*80

      OPEN(1,FILE='in',STATUS='OLD',ERR=99)
      OPEN(2,FILE='ou',STATUS='UNKNOWN')

2     if (EOF(1)) goto 99
      READ(1,*,err=1)A,B
      write(2,'(2F8.2)')A,B
      goto 2
1     backspace (1)
      READ(1,'(A)')TT
      write(2,'(A)')TRIM(ADJUSTL(TT))
      goto 2

99    END
一个人做点好事并不难难的是一辈子做好事!!!
5楼2009-10-05 23:05:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

gongxd325

至尊木虫 (文坛精英)

余泽成(金币+0,VIP+0):请耐心等待,求助需设定一定金币奖励! 10-5 23:21
或者先以字符形式读,再从字符中读数字,也同样出错。
      PROGRAM test2

      IMPLICIT REAL*8 (A-H,O-Z)
      CHARACTER TT*80

      OPEN(1,FILE='in',STATUS='OLD',ERR=99)
      OPEN(2,FILE='ou',STATUS='UNKNOWN')

2     if (EOF(1)) goto 99
      READ(1,'(A)')TT
      READ(TT,*,err=1)A,B
      write(2,'(2F8.2)')A,B
      goto 2
1     write(2,'(A)')TRIM(ADJUSTL(TT))
      goto 2

99    END
一个人做点好事并不难难的是一辈子做好事!!!
6楼2009-10-05 23:13:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

nono2009

超级版主 (文学泰斗)

No gains, no pains.

优秀区长优秀区长优秀区长优秀区长优秀版主

这是Fortran 77吗?
7楼2009-10-06 07:40:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

gongxd325

至尊木虫 (文坛精英)


nono2009(金币+1,VIP+0):谢谢分享经验。 10-6 09:12
自己解决了。
将READ(TT,*,err=1)A,B改为READ(TT,'(2F)',err=1)A,B就可以了
或者先读字符TT,再根据TT中间有无空格决定是否是数字形式,即
IF (INDEX(TRIM(ADJUSTL(TT)).NE.0) READ(TT,*,err=1)A,B
一个人做点好事并不难难的是一辈子做好事!!!
8楼2009-10-06 08:51:43
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 gongxd325 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 315求调剂 +4 akie... 2026-03-28 5/250 2026-03-28 21:05 by zhq0425
[考研] 332求调剂 +4 @MZB382400 2026-03-28 4/200 2026-03-28 21:02 by 唐沐儿
[考研] 083000学硕274求调剂 +8 Li李鱼 2026-03-26 8/400 2026-03-28 20:33 by 加油向未来啊
[考研] 化学0703 调剂 306分 一志愿211 +4 26要上岸 2026-03-28 4/200 2026-03-28 15:30 by 1018329917
[考研] 277跪求调剂 +5 1915668 2026-03-27 9/450 2026-03-28 09:58 by zhshch
[考研] 一志愿南昌大学324求调剂 +7 hanamiko 2026-03-27 7/350 2026-03-28 09:56 by 李上岸0921
[考研] 材料求调剂 一志愿哈工大总分298分,前三科223分 +5 dongfang59 2026-03-27 5/250 2026-03-28 04:53 by wxiongid
[有机交流] 高温高压反应求助 10+4 chibby 2026-03-25 4/200 2026-03-27 21:08 by BT20230424
[考研] 266求调剂 +11 阳阳哇塞 2026-03-27 12/600 2026-03-27 17:56 by yu221
[考博] 26申博 +3 加油冲啊! 2026-03-26 3/150 2026-03-27 15:38 by cls512
[考研] 考研调剂 +10 呼呼?~+123456 2026-03-24 10/500 2026-03-27 11:46 by wangjy2002
[考研] 材料求调剂 +5 .m.. 2026-03-25 5/250 2026-03-27 11:08 by 不吃魚的貓
[考研] 0703化学一志愿南京师范大学303求调剂 +3 zzffylgg 2026-03-24 3/150 2026-03-27 10:42 by shangxh
[考研] 281求调剂 +3 亚克西good 2026-03-26 5/250 2026-03-26 19:48 by 不吃魚的貓
[考研] 中国科学院深圳先进技术研究院-光纤传感课题组招生-中国科学院大学、深圳理工大学联培 +5 YangTyu1 2026-03-26 5/250 2026-03-26 18:27 by 猫咪猫咪呀
[考研] 281求调剂 +6 Koxui 2026-03-24 7/350 2026-03-26 15:37 by 无际的草原
[考研] 0854AI CV方向招收调剂 +4 章小鱼567 2026-03-23 4/200 2026-03-25 17:04 by CoderLoser
[考研] 296求调剂 +4 汪!?! 2026-03-25 7/350 2026-03-25 16:41 by 汪!?!
[考研] 求调剂 +6 研研,接电话 2026-03-24 7/350 2026-03-24 17:01 by barlinike
[考研] 085404电子信息284分求调剂 +4 13659058978 2026-03-24 4/200 2026-03-24 12:15 by syl20081243
信息提示
请填处理意见