主题:文件读入 格式问题 求指点迷津!!!
小弟想选择性的读入下面文件ELIST.DAT的 第一列,第二列,和后四列
---------------------------------------------------
ELEM MAT TYP REL ESY SEC NODES
101 1 1 1 0 1 890 1384 1277 1284
102 1 1 1 0 1 1284 340 765 890
103 1 1 1 0 1 1277 1384 1259 1267
104 1 1 1 0 1 1273 758 1283 610
105 1 1 1 0 1 708 1273 610 707
106 1 1 1 0 1 1370 758 1273 1264
107 1 1 1 0 1 459 1452 446 502
108 1 1 1 0 1 501 446 1452 1422
109 1 1 1 0 1 1422 1428 445 501
110 1 1 1 0 1 1363 340 1284 1360
111 1 1 1 0 1 340 1364 631 765
112 1 1 1 0 1 354 1454 353 1440
113 1 1 1 0 1 1440 353 429 430
114 1 1 1 0 1 353 1448 405 429
115 1 1 1 0 1 391 371 331 330
116 1 1 1 0 1 391 330 1444 1426
117 1 1 1 0 1 330 395 1427 1444
118 1 1 1 0 1 330 331 394 395
119 1 1 1 0 1 371 377 394 331
120 1 1 1 0 1 1382 1056 1384 890
ELEM MAT TYP REL ESY SEC NODES
121 1 1 1 0 1 1056 1382 766 1385
122 1 1 1 0 1 1370 905 640 758
。。。。。。。。。。。
类似这样的数据块 ( 空两行 + 一行英文标识 +20行数据)一共有64块
-----------------------------------------------------------------------------
程序:
REAL MATNO(2000),LNODS(2000,9),TITLE(30)
REAL COORD(2000,3)
NELEM=1280
NNODE=4
OPEN(6,FILE='ELIST.DAT',STATUS='OLD')
OPEN(7,FILE='NLIST.DAT',STATUS='OLD')
OPEN(8,FILE='ELEMENT.DAT',STATUS='UNKNOWN')
OPEN(9,FILE='NODE COORDINATES.DAT',STATUS='UNKNOWN')
DO 10 I=1,64
READ(6,*)
READ(6,*)
READ(6,*)
DO 10 J=1,20
READ(6,100) NUMEL,MATNO(NUMEL),(LNODS(NUMEL,INODE),INODE=1,NNODE)
WRITE(8,101)NUMEL,MATNO(NUMEL),(LNODS(NUMEL,INODE),INODE=1,NNODE)
100 FORMAT(4X,I4,3X,I,19X,I5,X,I5,X,2I5,X,2I5)
101 FORMAT(4X,I4,3X,I,19X,I5,X,I5,X,2I5,X,2I5)
10 CONTINUE
程序运行后输出的结果是
------------------------------------------------------------------------------
101 111 1277 1284 0 0
102 111 765 890 0 0
103 111 1259 1267 0 0
104 111 1283 610 0 0
105 111 610 707 0 0
106 111 1273 1264 0 0
107 111 446 502 0 0
108 111 1452 1422 0 0
109 111 445 501 0 0
110 111 1284 1360 0 0
111 111 631 765 0 0
-------------------------------------------------------------------------------
纠结了 感觉我的格式没什么错误啊
求各位解答!
---------------------------------------------------
ELEM MAT TYP REL ESY SEC NODES
101 1 1 1 0 1 890 1384 1277 1284
102 1 1 1 0 1 1284 340 765 890
103 1 1 1 0 1 1277 1384 1259 1267
104 1 1 1 0 1 1273 758 1283 610
105 1 1 1 0 1 708 1273 610 707
106 1 1 1 0 1 1370 758 1273 1264
107 1 1 1 0 1 459 1452 446 502
108 1 1 1 0 1 501 446 1452 1422
109 1 1 1 0 1 1422 1428 445 501
110 1 1 1 0 1 1363 340 1284 1360
111 1 1 1 0 1 340 1364 631 765
112 1 1 1 0 1 354 1454 353 1440
113 1 1 1 0 1 1440 353 429 430
114 1 1 1 0 1 353 1448 405 429
115 1 1 1 0 1 391 371 331 330
116 1 1 1 0 1 391 330 1444 1426
117 1 1 1 0 1 330 395 1427 1444
118 1 1 1 0 1 330 331 394 395
119 1 1 1 0 1 371 377 394 331
120 1 1 1 0 1 1382 1056 1384 890
ELEM MAT TYP REL ESY SEC NODES
121 1 1 1 0 1 1056 1382 766 1385
122 1 1 1 0 1 1370 905 640 758
。。。。。。。。。。。
类似这样的数据块 ( 空两行 + 一行英文标识 +20行数据)一共有64块
-----------------------------------------------------------------------------
程序:
REAL MATNO(2000),LNODS(2000,9),TITLE(30)
REAL COORD(2000,3)
NELEM=1280
NNODE=4
OPEN(6,FILE='ELIST.DAT',STATUS='OLD')
OPEN(7,FILE='NLIST.DAT',STATUS='OLD')
OPEN(8,FILE='ELEMENT.DAT',STATUS='UNKNOWN')
OPEN(9,FILE='NODE COORDINATES.DAT',STATUS='UNKNOWN')
DO 10 I=1,64
READ(6,*)
READ(6,*)
READ(6,*)
DO 10 J=1,20
READ(6,100) NUMEL,MATNO(NUMEL),(LNODS(NUMEL,INODE),INODE=1,NNODE)
WRITE(8,101)NUMEL,MATNO(NUMEL),(LNODS(NUMEL,INODE),INODE=1,NNODE)
100 FORMAT(4X,I4,3X,I,19X,I5,X,I5,X,2I5,X,2I5)
101 FORMAT(4X,I4,3X,I,19X,I5,X,I5,X,2I5,X,2I5)
10 CONTINUE
程序运行后输出的结果是
------------------------------------------------------------------------------
101 111 1277 1284 0 0
102 111 765 890 0 0
103 111 1259 1267 0 0
104 111 1283 610 0 0
105 111 610 707 0 0
106 111 1273 1264 0 0
107 111 446 502 0 0
108 111 1452 1422 0 0
109 111 445 501 0 0
110 111 1284 1360 0 0
111 111 631 765 0 0
-------------------------------------------------------------------------------
纠结了 感觉我的格式没什么错误啊
求各位解答!