Fortran实用编程.ppt

  1. 1、本文档共29页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Fortran 实用编程 Fortran Coder 研讨团队 系列视频教程 关于 Fortran Coder Fortran Coder 始于2006年,是一个以科学计算编程为主题的非盈利性研讨团体。大多数由各行业高等学府学生,研究人员及生产一线的工作人员组成。 研讨内容涉及:Fortran77/90/95/2003/2008语法规范,各平台32位及64位编译器,IMSL,MKL,Lapack 等数学函数库,MPI,OpenMP,Coarray 并行及高性能计算,winteracter / DisLin / Matfor / GTKFortran 等绘图及界面库。 关于本套视频 本套视频以解决实际问题为主要目的,旨在为您解答课本上较少涉及到的实际问题。通过本套视频,您会更容易了解: 如何查找错误?如何解决错误? 如何学习 Fortran2003 和 Fortran2008 语法? 如何用最通俗易懂的写法解决实际问题? 如何看懂别人的优秀代码并为自己所用?如何让自己的代码更优美、更普适? 本套视频由 Fortran Coder 研讨团队录制,供所有 Fortran 程序员和学习者免费自由的观看,您可随意的传播它。但请保证视频完整性。 我们将会不定期的更新本套视频,请持续关注我们的网站、QQ群! 同时,如果您对 Fortran 相关有自己的见解,并愿意通过录制视频的方式与其他人分享,请联系我们! 上节要点回顾 文件只有两种:文本文件和二进制文件,这是文件的本质 fortran读取文件有三种方式:顺序、直接、流文件读取 因此,组合以后以后,一共 2*3=6 种 读写文件用到 Open/Read/Write/Close 四个语句 Read读取时尽量采样表控格式(*) 顺序读取需从前往后依次读取,直接读取可以跳转,但要求每记录(行)的长度一致。 第十一讲 基础篇 第十一讲 语法之文件读写(下) 讲解人:雪球 gao@ 讨论QQ群:2338021 1 顺序读写无格式文件 2 直接读写无格式文件 3 流文件读写无格式文件 目 录 4 其他问题 顺序读写无格式文件 无格式文件(二进制文件),用于机器阅读,人类读懂较困难。 但是,它的格式与内存一样。因此是简单的复制到文件里,速度非常快! 非常适合: 大量的数据、中间数据、不希望普通用户看懂和随意更改的数据。 (SEGY、netcdf、bmp 、surfer grid 等都是二进制文件) 在了解二进制文件前,强烈建议安装一款“十六进制编辑器”软件。 用它,可在一定程度上“读懂”二进制文件(前提是你了解这个文件的格式) 本期资料里,附送一款 MiniHex 的绿色软件,可以打开任何二进制文件。 顺序读写无格式文件 顺序写入无格式文件,以记录为基本单元,读写过程分若干笔记录: 每次一笔记录,在记录前后各多出4个字节,用来记录本次写入的长度。 顺序读取时,通过这4个字节知悉当前记录的长度。 顺序读写无格式文件 我们再读取此文件时,程序会首先读入前 4 个字节,获得本笔记录的长度。 随后读入后 4 个字节,以验证是否与前 4 个字节相同(如不同则报错) 最后,把中间的字节按顺序,读取到变量列表里。 顺序读写无格式文件 因为有这个特殊的前后4字节,所以, 用 Fortran 顺序写入的文件,尽量还是用 Fortran 顺序读取。 其他非 Fortran 写入的文件,尽量不要用 Fortran 顺序读取。 用其他方式也可以读取顺序写入的文件,但会比较罗嗦和繁杂。 即: 只用 fortran,可以用顺序读写。 与其他软件、语言交互,通常不使用顺序读写。 1 顺序读写无格式文件 2 直接读写无格式文件 3 流文件读写无格式文件 目 录 4 其他问题 直接读写无格式文件 直接读写无格式文件,也以记录为基本单元,读写过程分若干笔记录: 但每一笔记录的长度,是固定的,在 Open 时指定。 在某些编译器上RecL 的含义是多少个 4 字节,而不是多少字节 直接读写无格式文件 直接读写无可以随便跳转到任何整记录读写,也可以一边读一边写。 读取时,不一定按照写入时候的顺序。 直接读写无格式文件 直接读写无可以随便跳转,自定义顺序,因此读写比较灵活。 但要求每个记录的长度一样,且Open以后就无法改变。 对于数据结构比较混乱(有2字节,有4字节,有8字节)的文件,读取不方便。 很多时候不得不多次Open、Close。用不同的RecL来读写不同长度的数据部分。 在以前,我们有一些技巧,来实现一次读取。 例如 Equivalence 语句,让不同长度的数据共享内存 就可以读写一个,而得到另一个。 然而,现在有了流文件方式,就不再推荐这种奇淫巧计了。 或者使用 MvBits 等函数对内

文档评论(0)

xuefei111 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档