- 1、本文档共22页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
IDL入门教程_06(在IDL中读写数据)
第六章 在IDL中读写数据
本章概要
本章旨在介绍IDL中的常用的输入和输出程序。IDL中的基本原则是:“只要有数据,就可以将其读进IDL”。IDL没有格式要求,也没有特别要求在将数据带入IDL时对数据进行准备。这使得IDL成为目前功能最强、最灵活的科学可视化分析语言。
具体来说,将学习:
如何打开文件进行读写
如何查找文件
如何获得文件I/O的逻辑设备号
如何获得机器的独立文件名
如何读写ASCII或格式化的数据
如何读写非格式化的或二进制数据
如何处理大型数据文件
如何读写通用的文件格式,如GIF和JEPG文件
打开文件进行读写
IDL中的所有输入和输出都是通过逻辑设备号完成的。可以把一个逻辑设备设想为一个管道,这个管道连接着IDL和要读写的数据文件。要从一个文件中读写数据,必须首先把一个逻辑设备号连接到一个特定的文件。这就是IDL中三个Open命令的作用:
openr 打开文件进行读。
openw 打开文件进行写。
openu 打开文件进行更新(也就是说,读和/或写)。
这三个命令的语法结构是完全相同的。首先是命令名,后面是一个逻辑设备号和要与该逻辑设备号相连的文件名。例如,将文件名temp596.dat和逻辑设备号20相连以便可以在此文件里面写入内容。如下:
OpenW, 20,’temp596.dat’
将会看到Open命令更常用的书写方式。例如,可能会看到类似于如下的IDL代码:
OpenR, lun, filename
此例中,变量lun保存了一个有效的逻辑设备号,变量filename代表一个机器特定的文件名,这个文件名将和此逻辑设备号联系起来。
注意,变量filename是一种机器特定的格式。这意味着如果它含有特定的目录信息,它必须用本地机器的语法来表达。而且它在某些机器(比如,UNIX机器)上具有大小写敏感性,因为在这些机器上文件名有大小写敏感性。
查找和选择数据文件
IDL被广泛使用的原因之一,是IDL可以在许多不同的计算机操作系统中运行。但由于不同的操作系统有不同的文件命名习惯(而且,特别用确定子目录的不同方式),这在以独立于机器的方式指定文件名方面提出了挑战。幸好,IDL提供了一些工具可让这项工作变得容易些。
选择文件名
也许获得机器独立文件名最容易的方法是用Pickfile对话框。IDL命令允许用机器上自身的选择文件的图形对话框来交互式地从文件名列表中选择一个文件名。例如,从本地目录.pro文件列表中选择一个文件名,可以键入如下命令:
IDLfilename=Dialog_Pickfile(Filter=’*.pro’,/Read)
注意,这个命令在IDL5.0以前的版本中命名为Pickfile。
IDL5.2版通过关键字Multiple,赋予Dialog_Pickfile选择多个文件名(若它们存在于同一个目录下)的能力。使用了正常的依赖于平台的选择文件方式。例如,在用WinDOws操作系统的计算机上,通常先选择第一个文件,接着用Shift键和鼠标点击来选择在第一个文件和第二个文件之间的所有文件,或者用Control键和鼠标点击来选择一个额外的文件。
IDLfilename=Dialog_Pickfile(Filter=’*.pro’,/Read,/Muitiple)
如果要打开文件来写而不是去读,在对话框中,可用Write关键字代替Read关键字。甚至可以推荐一个缺省的文件名,键入:
IDLoutfile=Dialog_Pickfile(File=’default.dat’,/Write)
从这个对话框中返回的是带绝对路径的文件名,其形式与运行IDL的机器有关。也就是说,它使用机器自身的文件命名语法。键入以下命令就可以看到:
IDLHelp, filename, outfile
注意,Dialog_Pickfile对话框中有一个“取消”按钮。若选择“取消”按钮,对话框会返回一个空字符串。所以在打开文件读写之前,总是希望检查返回的名字是否为空。
IDLIF outfile EQ ‘’ THEN Print, ’Whoops!’
选择目录名
在IDL5.2中,Dialog_pickfile得到改进,因而它也能用于选择目录名而不仅是一个文件名。设置Directory关键字,在选择窗口内只列出目录而没有文件。
IDLdirectory=Dialog_Pickfile(/Directory)
寻找文件
另一个有用的命令是FindFile命令。此命令返回一个包含所有符合给定文件要求的文件名的字符串数组。这在IDL程序中用于自动匹配并打开文件的任务中非常有用,或者是在任何时候不知道一个目录下有多少个文件的
您可能关注的文档
最近下载
- 2025年上半年教师资格考试高中语文学科知识与教学能力试卷与参考答案.docx VIP
- 平地机零件手册.pdf
- 贵州政立矿业有限公司平安二矿非煤矿山水害专项治理工程实施方案.doc
- 教师资格考试高中语文学科知识与教学能力新考纲必刷题解析(2025年).docx VIP
- 2025年教师资格考试高中学科知识与教学能力语文重点难点题库详解.docx VIP
- 控烟知识培训远离香烟完整版课件.pptx VIP
- 2025年生活会(四个带头)个人对照检查材料【含违纪行为典型案例剖析】2篇文.docx VIP
- 历年医学考研复试真题——麻醉学.pdf
- 基于神经网络手写数字识别系统设计与实现.doc
- 社区概述幻灯片.ppt
文档评论(0)