IDL中路径相关函数总结

【转】

系统变量

系统变量

描述

!DIR

IDL安装主目录

!PATH

IDL搜索库文件及路径,包含IDL自带库文件路径和用户工作空间路径。

!DLM_PATH

IDL搜索DLM路径

!HELP_PATH

IDL帮助文件路径

 

获取临时路径

IDL> printGETENV('IDL_TMPDIR')

C:\Users\Administrator\AppData\Local\Temp\

 

修改工作空间当前路径:CD,通过current关键字获取当前路径

 

IDL> cd'D:\temp'

IDL> cd, current = curPath

IDL> print, curPath

D:\temp

 

获取指定路径下文件名完整路径 – FilePath

;默认搜索路径为!dir路径下

IDL> printFILEPATH('people.dat', SUBDIRECTORY=['examples','data'])

C:\Program Files\Exelis\IDL82\examples\data\people.dat

;也可手动指定ROOT_DIR,即根目录

IDL> printfilepath('ruleset.xml', root_dir = 'D:\', subdirectory = ['temp'])

D:\temp\ruleset.xml

;获取系统路径下某文件夹路径

IDL> printfilepath('data')

C:\Program Files\Exelis\IDL82\data

IDL> printfilepath('bin')

C:\Program Files\Exelis\IDL82\bin

;关键字TMP,返回临时目录下自定文件名的完整路径

IDL> printfilepath('a.dat', /tmp)

C:\Users\Administrator\AppData\Local\Temp\a.dat

 

创建新路径

;如果不指定路径,则默认在当前路径下创建新文件夹

IDL> file_mkdir'test_mkdir'

;创建指定路径目录

IDL> file_mkdir'D:\temp\temp\temp'

 

判断文件/路径是否存在、文件是否为可执行文件、是否可读、可写等。 — File_Test

 

IDL> printfile_test('D:\temp\aaaa.dat')

           0

IDL> printfile_test('D:\temp\temp', /directory)

           1

IDL> printfile_test('D:\temp\temp1', /directory)

       0

IDL> printfile_test('D:\temp\ruleset.xml', /write)

           1

IDL> printfile_test('D:\temp\ruleset.xml', /executable)

           0

 

获取已编译某程序文件路径

IDL> printroutine_filepath('helloworld')

D:\IDLWorkspace82\Default\helloworld.pro

;常用此方法获取当前程序路径

IDL> printfile_dirname(routine_filepath('helloworld'))

D:\IDLWorkspace82\Default

IDL 8.2.2可以使用如下方法,即不需要输入过程名

IDL> printfile_dirname(routine_filepath())

D:\IDLWorkspace82\Default

 

获取完整文件名,以当前路径为基础

IDL> file = 'D:\temp\test_file.dat'

IDL> printfile_dirname(file)

D:\temp

IDL> printfile_basename(file)

test_file.dat

 

获取系统路径!Path或指定路径下的文件完整路径 – File_Which

 

IDL> printFILE_WHICH('file_which.pro')

C:\Program Files\Exelis\IDL82\lib\file_which.pro

IDL> printFILE_WHICH('D:\temp''ruleset.xml')

D:\temp\ruleset.xml

;在!Path下没有搜索到ruleset.xml文件

IDL> printFILE_WHICH('ruleset.xml')

;include_current_dir关键字表示将当前路径加入到搜索路径下

IDL> printFILE_WHICH('ruleset.xml', /include_current_dir)

D:\temp\ruleset.xml

获取当前系统的路径分隔符

IDL> printpath_sep()

\

Dialog_Pickfile函数

Result DIALOG_PICKFILE( [, DEFAULT_EXTENSION=string] [, /DIRECTORY] [, DIALOG_PARENT=widget_id] [, DISPLAY_NAME=string] [, FILE=string] [, FILTER=string/string array] [, /FIX_FILTER] [, GET_PATH=variable] [, GROUP=widget_id] [, /MULTIPLE_FILES] [, /MUST_EXIST] [, /OVERWRITE_PROMPT] [, PATH=string] [, /READ | , /WRITE] [, RESOURCE_NAME=string] [, TITLE=string] )

关键字

含义

DEFAULT_EXTENSION

默认返回文件名后缀

DIRECTORY

打开返回路径的对话框

FILTER

后缀名筛选

GET_PATH

获取对话框上一次选择的路径

MULTIPLE_FILES

是否支持多选文件(按住Ctrl或Shift时)

PATH

默认打开路径

TITLE

对话框标题

posted @ 2015-05-15 22:55  haizhupan  阅读(5902)  评论(0编辑  收藏  举报