fortran 90 文件(文件的操作语句)解析
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
土木学院
这是已被打开 的数据文件的 内容
土木学院
土木学院
$
10
100 202
U1=2 Open(Unit=2,File='F2.DAT',Status='New', Access='Sequential',Form='Formatted') do 10 I=1,30 write(*,*) "请输入学号、两门成绩" Read(*,*) N,A,B C=A+B Write(2,202) '学号:', N,'总成绩',C continue 输入30个学生的学号 Close(2) 和两门成绩,最后将总 Format(I2,F5.1,F5.1) 成绩与学号输出来. Format(A,I2,A,F7.1) End
我们现在主要以磁盘设备为例来介绍FORTRAN 对文件操作的语句(打开、关闭、定位、输入和输出)
土木学院
FORTRAN的数据文件由记录组成,也就是对文 件的存取是以记录为单位进行的;
文件
记录:长度不超过规定范围的数字或文本 的集合;
记录
Fortran的数据文件按存取方式可划分为: 1. 顺序存取文件(顺序文件) 其存取操作必须从头到尾顺序进行; 2. 直接存取文件(直接文件或随机文件) 在程序的执行过程中对任意一个指定的 记录进行操作(读和写)。
Access=SD 代表文件的存取方式: Direct:以直接方式存取;Sequential: 以顺序方式存取;
Form=fe 代表文件存放格式:Formatted-字符形式
在Open中省略Access和Form,则表示打开文件为 有格式顺序存取文件.
Open(Unit=2,File='F2.DAT',Status='New', Access='Sequential',Form='Formatted')
顺序文件的输出操作: Write(设备号,格式说明) 输出项表
土木学院
FORTRAN中数据文件的存储形式: 1. 字符形式(ASCII) ——称之为“有格式存放” FORMATTED 2. 二进制数代码形式 ——称之为“无格式存放” UNFORMATTED
土木学院
本章主要内容:
有格式顺序存取文件; 有格式直接存取文件; 无格式文件的存取;
文件操作语句;
有关文件操作的程序举例。
土木学院
13.1有格式顺序存取文件
关闭文件(Close):解除设备号和一个文件名的关 联. CLOSE (设备号) 一次只关闭一个设备号; 在程序中的STOP\END语句都具有Close的功能 顺序文件的输入操作: READ(设备号,格式说明,END=语句标号) 变量表
与OPEN中 指定的设备 号相同 一般不写
下面我们就介绍如何从文件中获得数据: (例如:从文件F1.DAT中读取数据,经过处理 后,将结果保存在F2.DAT中) 1. 准备数据文件(可以在各种编辑器中完成, 输入格式及宽度与程序要求的一致),数据文 件名的后缀为 *.DAT(也可以是*.txt); 2. 编写数据输入和数据处理文件,最后将结 果输出到F2.DAT中.
Read(*,100) A,B C=A+B Write(*,200) ‘A= ‘,A, ‘B= ‘,B Write(*,200) ‘C= ‘,C 从键盘接收 100 Format(2F6.1) 数据,经过 处理,然后 200 Format(1X,2(A,F7.2)) 输出显示. End
输出: A=__10.10_B=__20.40 C=__30.50
土木学院
这是打开数据 文件F2.DAT 的内容
土木学院
13.1有格式顺序存取文件
打开文件(Open):是把一个设备号和一个文件名关 联起来,这样在程序中将由设备号代替指定的文件;
Unit=ie 代表设备号(0~99) File=ce 代表文件名;
Status=se 代表文件状态:已经存在-Old; 新建-New
第十三章 文 件
(FORTRAN的文件操作)
土木学院
说明:
在实际应用中,往往大量需要处理的数据是由专 门人员来采集,并构成以文件名来具体代表的数据 文件(比如大型有限元软件的数据采集也是这样的);
文件名通常由三部分组成:存放的设备、 文件名本身、文件类别;
如何从各种设备上获取和保存不同类型的数据文 件就是我们在进行科学计算时常常遇到的问题;
输入: __10.1__20.4
土木学院
Read(*,100) A,B C=A+B Write(*,200) 'A= ',A, 'B= ',B Write(*,200) 'C= ',C 100Format(2F6.1) 200Format(1X,2(A,F7.2)) End
土木学院
土木学院
13.1有格式顺序存取文件
土木学院
13.1有格式顺序存取文件
我们已经知道:READ语句是完成数据输入
任务的。
从键盘输入一行数据(以Enter键作为确 认),这就形成了一个“记录”。 从键盘输入一行数据时,必须与指定的格 式对应(格式编辑符与输入的数据类型以 及宽度),否则就会出错(或报错)。
土木学院
13.1有格式顺序存取文件
土木学院
土木学院
数据输 入和数 据处理
数据 输出
100 200Leabharlann character*8 Fname1 Integer U1 U1=3 Fname1='F1.DAT' Open(Unit=U1,File=Fname1,Status='OLD', $ Access='Sequential',Form='Formatted') Read(U1,100) A,B C=A+B Open(Unit=2,File='F2.DAT',Status='New', $ Access='Sequential',Form='Formatted') Write(2,200) 'A=',A, 'B=', B Write(2,200) 'C=',C Close (U1) _123.1_123.2 F1.DAT的内容 Close(2) Format(2F6.1) A=_123.10 B=_123.20 Format(2(A,F7.2)) C=_246.30 F2.DAT的内容 End 注:该源文件与数据文件放在同一目录中