ENVI 5.0以后的版本基本对代码进行了新的重构,改成了面向对象的形式,比以前编程操作更为有效、逻辑也更清晰和简洁,增加了更多的功能,但是近几个版本的更新较多,有些功能还有bug。新版本的函数老版本可能就没有,但是新版本是实现了向下兼容的,建议使用最新版本的ENVI/IDL
这里给一个简单的批量读取ENVI Standard的.dat格式,并保存为另一种文件格式的demo,大家可以参考参考
pro change_file_type
compile_opt idl2
envi,/restore_base_save_files
envi_batch_init
;前半部分习惯了这么写,新版本有没有变化还不确定
work_dir=DIALOG_PICKFILE(title='选择文件所在路径',/directory)
file_lists=FILE_SEARCH(work_dir,'*.dat',count=fnum)
fbasena=FILE_BASENAME(file_lists,'.dat')
e = envi()
file_out_path = DIALOG_PICKFILE(title='选择文件输出路径',/directory)
for i = 0, fnum-1 do begin
raster = e.OpenRaster(file_lists[i])
file_out_name = 'I:\' + fbasena[i] + '.tif'
raster.Export, file_out_name, 'TIFF'
endfor
end